Redux 在node.js后端导入时出现问题
我正在学习一门新语言(Redux),但我有这个问题Redux 在node.js后端导入时出现问题,redux,Redux,我正在学习一门新语言(Redux),但我有这个问题 Warning: To load an ES module, set "type": "module" in the package.json or use the .mjs extension. 这里我添加了package.json的内容 ... import express from 'express'; ^^^^^^ SyntaxError: Cannot use import statemen
Warning: To load an ES module, set "type": "module" in the package.json or use the .mjs extension.
这里我添加了package.json的内容
...
import express from 'express';
^^^^^^
SyntaxError: Cannot use import statement outside a module
{
"name": "tryredux",
"version": "1.0.0",
"type": "module",
"description": "\"# tryredux\"",
"main": "index.js",
"dependencies": {
"@babel/cli": "^7.10.5",
"@babel/core": "^7.11.0",
"@babel/node": "^7.10.5",
"@babel/preset-env": "^7.10.4",
"express": "^4.17.1",
"nodemon": "^2.0.4",
"react-router-dom": "^5.2.0"
},
"devDependencies": {
"@babel/cli": "^7.8.4",
"@babel/core": "^7.8.4",
"@babel/node": "^7.8.4",
"@babel/preset-env": "^7.8.4",
"eslint": "^6.8.0",
"eslint-config-airbnb": "^18.1.0",
"eslint-plugin-import": "^2.20.1",
"eslint-plugin-jsx-a11y": "^6.2.3",
"eslint-plugin-react-hooks": "^2.5.1",
"nodemon": "^2.0.2"
},
"scripts": {
"start": "nodemon --watch backend --exec babelnode backend/server.js"
},
"author": "",
"license": "ISC"
}
当他问我时,我添加了“类型”:“模块”,我有这个问题:
(node:6392) ExperimentalWarning: The ESM module loader is experimental.
internal/modules/run_main.js:54
internalBinding('errors').triggerUncaughtException(
^
Error [ERR_MODULE_NOT_FOUND]: Cannot find module
...\sa\backend\data' imported from
...\sa\backend\server.js
at finalizeResolution (internal/modules/esm/resolve.js:259:11)
at moduleResolve (internal/modules/esm/resolve.js:636:10)
at Loader.defaultResolve [as _resolve]
(internal/modules/esm/resolve.js:726:11)
at Loader.resolve (internal/modules/esm/loader.js:97:40)
at Loader.getModuleJob (internal/modules/esm/loader.js:243:28)
at ModuleWrap.<anonymous> (internal/modules/esm/module_job.js:47:40)
at link (internal/modules/esm/module_job.js:46:36) {
code: 'ERR_MODULE_NOT_FOUND'
}
这里的答案非常简洁:
在节点中,默认为用于模块处理的commonjs语法。您可以考虑切换到“要求”( App.js到<代码>数据< /代码>的结尾-应该是“代码>数据。js<代码> > 您的<代码>包的内容是什么?JSON < /代码>?您运行的是最新的节点版本吗?您运行的是最新的节点版本吗?未重新安装的nowcespon package.jsonI请记住,我使用了triedsir,我提醒您,我们使用的是node.js技术,因此在导入时,我们会写入../data no data.js