IP地址检测
视频播放器
输入关键词搜索
登录
Deno教程&使用手册

Deno教程&使用手册

2025-01-26
编程开发

安装deno

方式一:shell

curl -fsSL https://deno.land/install.sh | sh

方式二:npm

npm install -g deno

方式三:homebrew

brew install deno

deno init

Initialize a new project 初始化deno项目

# 命令
deno init my_project

# 文件结构如下:
my_project
├── deno.json
├── main_test.ts
└── main.ts
// deno.json
{
  "tasks": {
    "dev": "deno run --watch main.ts"
  },
  "imports": {
    "@std/assert": "jsr:@std/assert@1" // 导入了一个包
  }
}
// main.ts
export function add(a: number, b: number): number {
  return a + b;
}

// import.meta.main 是 Deno 环境中特有的一个属性,它是一个布尔值(true 或 false)
// 【true】 文件是直接运行   【false】 被其他文件导入
if (import.meta.main) {
  console.log("Add 2 + 3 =", add(2, 3));
}

deno run

Run a JavaScript or TypeScript program, or a task

// main.ts
const res = await fetch("http://icanhazip.com")
console.log(res)

Deno 原生支持 TypeScript,无需额外配置或工具链(如 tsc 或 Babel)

deno main.ts
deno run main.ts
deno run --allow-net=google.com main.ts

deno add & deno remove

deno add,在当前项目的deno.json中添加一条依赖,如果没有deno.json文件,就在当前项目创建deno.json并添加依赖,deno remove 同理。

效果等同于 npm install & npm uninstall, 不带-g参数

区别:deno里面没有node_modules目录,Deno 会在你运行代码时,自动从指定的 URL 下载模块并缓存到本地。首次运行时,它会从网络下载依赖,并将其缓存到 Deno 的 缓存目录,通常是在用户的主目录下的 ~/.deno 目录中。缓存路径是由 Deno 自动管理的,因此你无需手动指定

deno install & deno uninstall

  1. 在当前目录安装可执行文件,deno installdeno install xxx

  2. 在全局安装可执行文件,格式如下:

deno install --global --allow-net --allow-read -n server jsr:@std/http/file-server

参数

-g/--global 必须要加

--allow-net 和 --allow-read 是可执行文件执行时需要的权限,如果不知道要加什么权限,参考以下几个办法:(1)不管它,不写权限直接安装,但是以后每次运行时都要授权一下权限 (2)写 -A 或 --allow-all,即允许所有权限 (3)先安装并运行,然后会提示你需要哪些权限,记下来。接着卸载掉再重新安装,此时再把权限加上去

-n/--name 可选参数,用于修改可执行文件的名字

命令输出

可执行文件安装到了~/.deno/bin目录下,为了一探究竟,我继续查看file-server里面的内容

奥,原来是创建了一个shell脚本,通过deno调用远程的file-server来实现的,那么demo安装其他的全局可执行文件应该都是这个原理

至此,deno install 的流程已经梳理完了🎉🎉🎉

uninstall

uninstall用来卸载<全局>可执行文件,格式如下:

deno uninstall -g file-server

参数

-g/--global 必须要

file-server 可执行文件的名称。根据上面的结论可以得出,这个名称就是shell脚本的文件名

命令输出

从输出结果中可以看到,卸载命令就是把shell文件给删除了

Deno最佳实践

虽然deno可以直接运行单个ts文件,但是当我们在IDE中编辑这个文件时,一些函数会报红,实际上你用deno xxx.ts命令是可以正常运行的。

报错的原因是IDE无法在ts文件所在目录中找到deno.json文件

所以最好建一个文件夹,里面放一个deno.json文件,在这个文件下所有的ts文件打开后不会报红,该有的依赖也能找到,而且每个ts也都能单独执行

新建deno.json有两种,一种是deno add [三方库]会自动创建deno.json,另一种是deno init [项目名]

THE END
0/500
暂无评论
📢网站公告
欢迎来到这里
⚙️实用工具
html转pdfmarkdown编辑器
本站推荐:腾讯云服务器仅需2.3折 (点击直达)
用户协议
隐私政策
Build Time: 2025-02-06 16:15:33