Deno 是一个现代化的 JavaScript 和 TypeScript 运行时,可以用于开发服务器端应用、脚本等等。它的优点是有良好的安全性、不需要 package.json 文件、自带 typescript 支持等等。
不过在实际使用 Deno 过程中,你可能会遇到一些问题。下面我们来看一些 Deno 使用中的常见问题及解决方法。
问题 1:如何安装 Deno
安装 Deno 非常简单,官网提供了多种方式:
- 通过 Shell 安装(最常用的方式):
---- ----- -------------------------------------- - --
- 使用包管理器安装,比如 Homebrew:
---- ------- ----
- 从官网下载二进制文件安装。
需要注意的是,使用官网下载的方式需要手动将可执行文件移动到 PATH 环境变量中。而使用包管理器或 Shell 安装方式,会自动添加到 PATH 中。
问题 2:如何引入第三方模块
Deno 自带了一个称为 ES 模块的功能,可以用来引入第三方模块。通过使用 URL 导入,可以方便地从远程 URL 获取依赖包,比如 Node.js 中的 npm 等等。
可以使用类似下面的代码导入一个库:
------ - ------------ ------ - ---- ---------------------------------
其中 "https://deno.land/x/oak/mod.ts" 是一个 URL,指向 oak 库的入口文件。注意这里的文件后缀名为 .ts,因为 Deno 默认支持 TypeScript。
问题 3:如何使用 TypeScript 编写 Deno 应用程序
Deno 默认支持 TypeScript,如果你已经安装了 Deno,那么你可以使用 TypeScript 开发应用程序。
可以通过在命令行中使用 --ts
标志来执行 TypeScript 文件:
---- --- ---- ------
需要注意的是,使用 Deno 来进行 TypeScript 开发时,你不需要安装 TypeScript,因为 Deno 已经自带了 TypeScript。
问题 4:如何使用 JavaScript 编写 Deno 应用程序
尽管 Deno 默认支持的是 TypeScript,但它同样也支持 JavaScript。可以同样简单地使用 JavaScript 来编写应用程序。
可以通过在命令行中不使用 --ts
标志来执行 JavaScript 文件:
---- --- ------
需要注意的是,使用 JavaScript 进行开发时,你不需要安装任何 JavaScript 编译器。
问题 5:如何使用 Deno 核心 API
Deno 可以访问多种内置的 API,而这些 API 为开发人员提供了一些处理文件、网络、子进程等方面的工具。
下面是一个使用 Deno 的核心 API 进行 HTTP 请求的示例:
------ - ----- - ---- --------------------------------------- ----- ------ - ------- ----- ---- --- --- ----- ------ ------- -- ------- - ----------------- ----- ------ ------ --- -
在这个示例中,我们使用了 Deno 自带的 HTTP 服务器 API,然后使用 serve
函数为服务器创建了一个监听地址为 8000
的 HTTP 服务器。
问题 6:如何使用 Deno 安全性
Deno 的一个主要优点是安全性。Deno 阻止任何开箱即用的 JavaScript 和 TypeScript 程序访问文件系统、网络、环境变量等等,除非你明确地告诉它你要这样做。
在使用 Deno 过程中,你可以设置几个特殊的标志,以便在执行脚本时增加安全性:
--allow-all
:允许程序使用所有功能。--allow-env
:允许程序使用环境变量。--allow-net
:允许程序访问网络。--allow-read
:允许程序读取所有的文件,包括子目录。--allow-run
:允许程序派生子进程。--allow-write
:允许程序写入所有的文件,包括子目录。
需要注意的是,如果你不需要使用所有的功能,那么应该只开启你需要用到的功能。除此之外,你还可以使用文件系统许可控制 Deno 引擎的访问权限。
总结
Deno 是一个现代 JavaScript 和 TypeScript 运行时,在实际使用中可能会遇到一些问题。本文总结了一些 Deno 使用中的常见问题及解决方法,包括如何安装 Deno、如何引入第三方模块、如何使用 TypeScript 和 JavaScript 编写应用程序、如何使用 Deno 的核心 API 以及如何使用 Deno 安全性方法。
需要注意的是,本文只涵盖了一些常见问题,并不能涵盖所有问题。如果遇到问题,应该使用 Deno 的文档来找到解决方法。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/66510027d3423812e43fe33a