Deno 快速入门

今天浏览网页,无意中看到了Deno这个名词,觉得好奇,就简单研究了下。

(1)Deno是什么?

Deno 是一个 JavaScript/TypeScript 的运行时, 是NODEJS的作者由于对NODEJS不满意而开发的NODEJS的替代品。它名字挺有意思,来自 Node 的字母重新排列。

(2)特点是什么?

  • 默认安全。外部代码没有文件系统、网络、环境的访问权限,除非显式开启。
  • 支持开箱即用的 TypeScript 的环境。
  • 底层依赖的语言与NODEJS不同,是 Rust。
  • Deno 不再使用 npm 安装包的方式,彻底告别 require 命令和复杂的 node_modules 文件夹。
  • 有一组经过审计的 标准模块,保证能在 Deno 上工作。
  • 脚本代码能被打包为一个单独的 JavaScript 文件。
  • 只分发一个独立的可执行文件(deno)。

(3)如何安装?

点击下载地址,下载需要的机器版本,目前最新版是1.6,我下载的是windows版本。

Deno 快速入门_第1张图片

(4)如何配置运行环境?

解压下载好压缩包,放到固定的位置,比如D:\Program Files\deno,双击 deno.exe 会打开一个类似 cmd 的窗口,说明下载文件没问题:

Deno 快速入门_第2张图片

把D:\Program Files\deno配置到path路径,便于执行deno命令。

(5)编写第一个示例

在 D:\Program Files\deno 下创建一个 test 目录,新建一个 test.ts 文件,写入如下内容:

// test.ts
import { serve } from "https://deno.land/[email protected]/http/server.ts";
 
const PORT = 8888;
const servres = serve({ port: PORT });
 
console.log(` Listening on :${PORT}/`);
 
for await (const req of servres) {
  req.respond({ body: "Hello World" });
}

打开cmd ,进入D:\Program Files\deno\test目录,执行deno run test.ts,但是出现了异常:

Uncaught PermissionDenied: network access to "0.0.0.0:888", run again with the --allow-net flag

没有网络权限,需要指定 –allow-net 才行,这正是因为Deno 有了安全机制。

重新执行deno run --allow-net test.ts,如下窗口所示,说明启动成功

访问 http://127.0.0.1:8888,效果如下:

Deno 快速入门_第3张图片

  目前Deno生态还不完善,网上学习资源也有限,后续会继续关注其发展。

你可能感兴趣的:(前端技术,deno,快速入门)