边缘函数

本地开发环境

配置边缘函数的本地开发环境。


我们推荐安装 Deno CLI 及相关工具用于本地开发。

Deno 支持

您可以按照 Deno 指南 配置您喜欢的编辑器/IDE 开发环境。

在 Visual Studio Code 中使用 Deno

使用 VSCode 时,您需要同时安装 Deno CLI 和 Deno 语言服务器,可以通过此链接安装,或在 VSCode 扩展市场中搜索并安装 Deno 扩展。

子文件夹中的 Deno 支持

您可以为工作区中的特定子路径启用 Deno 语言服务器,同时对所有其他文件使用 VSCode 内置的 JavaScript/TypeScript 语言服务器。

例如,如果您有如下项目结构:

1
2
3
4
project├── app└── supabase └── functions

若只想为 supabase/functions 文件夹启用 Deno 语言服务器,请在配置中将 ./supabase/functions 添加到 Deno: Enable Paths 列表中。在您的 .vscode/settings.json 文件中添加:

1
2
3
4
{ "deno.enablePaths": ["./supabase/functions"], "deno.importMap": "./supabase/functions/import_map.json"}

VSCode 中的多根工作区

我们推荐使用上文提到的 deno.enablePaths 方法,因为它更易于管理。不过如果您喜欢使用多根工作区,也可以将其作为替代方案。

例如,以下是一个结合 CRA (create react app) 客户端与 Supabase 边缘函数的 edge-functions.code-workspace 配置示例。您可以在 GitHub 上找到完整示例。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
{ "folders": [ { "name": "project-root", "path": "./" }, { "name": "client", "path": "app" }, { "name": "supabase-functions", "path": "supabase/functions" } ], "settings": { "files.exclude": { "node_modules/": true, "app/": true, "supabase/functions/": true }, "deno.importMap": "./supabase/functions/import_map.json" }}