什么是 Deno?
Deno 是一个用于开发 Web 应用、服务端应用、脚本和工具的 JavaScript 和 TypeScript 运行时环境,它由 Node.js 的创建者 Ryan Dahl 开发。Deno 实现了一些新的特性,例如:ES 模块支持、类型化数组、内置的 TypeScript 编译器等,能够提供更好的开发体验。
Module not found 错误是什么?
在 Deno 中,当我们使用 import 语句导入模块时,如果 Deno 找不到对应的模块文件,就会报错并提示 Module not found。
通常情况下,这可能是由于你导入的模块名称写错了、路径不对、或者模块并不存在等原因引起的,还有可能是因为 Deno 不支持导入某些第三方模块导致的。
如何解决 Module not found 错误?
1. 检查模块名称和路径
检查一下导入的模块名称和路径是否写正确了,如果不正确,可以尝试修改一下。
import { log } from './utils.ts'; log('Hello, World!');
2. 使用 URL 地址导入模块
如果导入的模块不是一个本地文件,而是通过 URL 地址获取的,可以使用 URL 地址来导入模块。
import { log } from 'https://deno.land/std/log/mod.ts'; log.info('Hello, World!');
3. 安装第三方模块
Deno 默认不允许访问网络,因此在导入某些第三方模块时,需要使用 Deno Third Party Modules API 中的 fetch 函数来下载并安装模块。
-- -------------------- ---- ------- ------ - --- - ---- ----------------------------------- ----- ----------- --------- - -------- --- ------------------------------------- -- -------- - -------- - ------ -------- --------- ------------ -- -- --- ---------------- ---------
4. 编译器中指定模块路径
在某些情况下,Deno 的编译器可能无法正确识别模块路径,我们可以使用编译器的 --importmap
选项来指定模块路径。
$ deno run --importmap=import_map.json app.ts
其中 import_map.json 的内容如下:
{ "imports": { "log": "https://deno.land/std/log/mod.ts" } }
总结
Module not found 错误通常是由于导入的模块名称、路径不正确或者 Deno 不支持某些第三方模块导致的。通过检查导入的模块名称和路径、使用 URL 地址导入模块、安装第三方模块、以及使用编译器的 --importmap
选项来指定模块路径,可以有效地解决该错误。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64c95d8e5ad90b6d04169d2a