urlImports
URL 导入是一项实验性功能,允许你直接从外部服务器(而不是从本地磁盘)导入模块。
警告: 此功能为实验性功能。仅使用你信任的域名来下载和执行代码。请谨慎使用,并注意此功能在标记为稳定之前的风险。
要启用此功能,请在 next.config.js
中添加允许的 URL 前缀:
然后,你可以直接从 URL 导入模块:
URL 导入可以在任何可以使用常规包导入的地方使用。
此功能的设计以 安全性为首要考虑。首先,我们添加了一个实验性标志,强制你明确允许接受 URL 导入的域名。我们正在进一步努力,通过使用 Edge Runtime 限制 URL 导入在浏览器沙箱中执行。
使用 URL 导入时,Next.js 将创建一个 next.lock
目录,其中包含锁定文件和获取的资源。
此目录 必须提交到 Git,而不是被 .gitignore
忽略。
- 当运行
next dev
时,Next.js 将下载并添加所有新发现的 URL 导入到你的锁定文件中
- 当运行
next build
时,Next.js 将仅使用锁定文件来构建生产环境的应用程序
通常情况下,不需要网络请求,任何过时的锁定文件都会导致构建失败。
一个例外是响应带有 Cache-Control: no-cache
的资源。
这些资源将在锁定文件中有一个 no-cache
条目,并且每次构建时都会从网络中获取。