npm run dev 报错import { performance } from 'node:perf_hooks' ^^^^^^ SyntaxError: Cannot use import statement outside a module at Module.
时间: 2023-05-27 21:07:38 浏览: 2429
load (internal/modules/cjs/loader.js:991:10) at Function.Module._load (internal/modules/cjs/loader.js:853:14) at Module.require (internal/modules/cjs/loader.js:1033:19) at require (internal/modules/cjs/helpers.js:72:18) at Object.<anonymous> (/path/to/file.js:1:1) at Module._compile (internal/modules/cjs/loader.js:1144:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1164:10) at Module.load (internal/modules/cjs/loader.js:993:32) at Function.Module._load (internal/modules/cjs/loader.js:853:14) at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:74:12)
这个错误是因为使用了ES6的import语法,但是Node.js默认是使用CommonJS规范,所以需要在代码中使用require来引入模块。
解决方案:
在代码中使用require来引入模块,例如:
const { performance } = require('perf_hooks');
或者将代码转换为ES6模块,使用import语法,需要在package.json中添加"type": "module"配置项,例如:
{
"name": "my-app",
"type": "module",
"dependencies": {
"express": "^4.17.1",
"mongoose": "^5.9.28"
}
}
然后在代码中就可以使用ES6的import语法了,例如:
import { performance } from 'perf_hooks';
阅读全文