FORMA

其他配置

Deno 环境变量、调试与升级卸载

一、环境变量

Deno 默认禁止访问环境变量,以遵循最小权限原则。必须通过 --allow-env 标志显式开启。

1. 基本操作

typescript
// 需要 --allow-env 权限
const apiKey = Deno.env.get("API_KEY");
console.log(apiKey);

// 设置环境变量(仅在当前进程生效)
Deno.env.set("DEBUG", "true");

// 删除环境变量
Deno.env.delete("TEMP_VAR");

// 检查是否存在某个变量
if (Deno.env.has("PATH")) {
  console.log("PATH exists");
}

// 获取所有环境变量(返回对象)
const allEnv = Deno.env.toObject();
console.log(allEnv.HOME);

运行

bash
deno run --allow-env env-demo.ts
# 或只允许特定变量(可提供逗号分隔的列表)
deno run --allow-env=API_KEY,DEBUG env-demo.ts

2. 加载 .env 文件(推荐使用标准库)

Deno 官方标准库 @std/dotenv 提供了加载 .env 文件的功能。

安装(在项目中):

bash
deno add jsr:@std/dotenv

使用

typescript
// 在程序入口文件顶部导入
import "jsr:@std/dotenv/load";

console.log(Deno.env.get("MY_VAR")); // 从 .env 文件加载的值

默认查找 .env 文件,也可指定路径:

typescript
import { load } from "jsr:@std/dotenv";

const env = await load({ envPath: "./config/.env.production" });
console.log(env.MY_VAR);

.env 文件示例

text
API_KEY=abc123
DB_URL=postgres://localhost/mydb
DEBUG=true

二、调试

Deno 内置了与 Chrome DevTools 等工具兼容的调试器,通过 --inspect--inspect-brk 标志启用。

1. 基本调试命令

命令说明
deno run --inspect --allow-net server.ts启动调试器,监听默认端口 9229,不会暂停
deno run --inspect-brk --allow-net server.ts在第一行代码前暂停,等待调试器连接
deno run --inspect=127.0.0.1:9999 --allow-net server.ts指定监听地址和端口

配合 Chrome DevTools

  1. 运行 deno run --inspect-brk server.ts
  2. 打开 Chrome 浏览器,地址栏输入 chrome://inspect
  3. 在 “Remote Target” 列表中找到 Deno 进程,点击 inspect,即可开始调试(断点、单步、变量查看等)。

2. 使用 VS Code 调试

在项目根目录创建 .vscode/launch.json

json
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Deno",
      "type": "node",
      "request": "launch",
      "cwd": "${workspaceFolder}",
      "runtimeExecutable": "deno",
      "runtimeArgs": ["run", "--inspect-brk", "--allow-all", "main.ts"],
      "attachSimplePort": 9229
    }
  ]
}

然后按 F5 启动调试。

三、升级与卸载

1. 升级 Deno

bash
# 升级到最新稳定版
deno upgrade

# 升级到特定版本
deno upgrade --version 1.45.0

2. 卸载 Deno

平台操作
macOS / Linux(通过安装脚本安装)删除 ~/.deno 目录,并移除环境变量 PATH 中的 ~/.deno/bin 条目
Windows(通过 PowerShell 安装)删除 %USERPROFILE%\.deno 目录
Homebrewbrew uninstall deno
npm 全局安装npm uninstall -g deno

验证是否已卸载

bash
deno --version
# 应提示 "command not found"

四、总结

操作关键点
环境变量--allow-env;推荐 @std/dotenv 加载 .env 文件
调试--inspect-brk + Chrome DevTools 或 VS Code 配置
升级deno upgrade
卸载删除安装目录(~/.deno%USERPROFILE%\.deno

掌握这些技能,可以更高效地开发和调试 Deno 应用。

参考文献

资料说明
Environment variablesDeno.env
@std/dotenv (JSR)加载 .env
Debugging官方调试

Series

deno

6 / 8