nodejs项目中下加载esmdule

nodejs支持esmodule导入,通过import可以加载esmodule,但也有些条件,如果不满足仍然会报错。

https://static.1991421.cn/2024/2024-04-10-101444.jpeg

注意:nodejs下import与浏览器侧有区别。

import本地JS模块

  1. js文件所在文件夹目录下package.json中声明type:module
  2. 文件后缀为mjs

import URL

node下执行import(url)报错ERR_UNSUPPORTED_ESM_URL_SCHEME

错误代码解释如下:

import with URL schemes other than file and data is unsupported.

由此可以知道nodejs下动态import是不支持URL的,但比如deno是支持URL的,不过deno不考虑commonjs没有这个历史包袱。