node.js - 如何修复节点中的“当前未启用对实验语法“exportDefaultFrom”的支持”
问题描述
我有一个在 React、Node、express 上运行的全栈 javascript 应用程序。问题是export
没有default
在节点中工作,但是,它在反应中工作正常。我的节点和 react 共享相同的 babel 配置和包。
我已经尝试@babel/plugin-proposal-export-default-from
在我的中添加包,babel.config.js
但是这样做之后,它会产生另一个错误
意外令牌 (25:16) 导出 getMember;
我什至尝试删除半列
这是我的babel.config.js
module.exports = {
"presets": ['@babel/preset-env', '@babel/preset-react'],
"plugins": [
[
"@babel/plugin-proposal-class-properties",
{
"loose": true
}
]
]
};
这是我的package.json
{
"name": "dpapi",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "nodemon --exec babel-node server.js --ignore dist/",
"dev": "webpack -wd"
},
"keywords": [],
"author": "",
"license": "ISC",
"devDependencies": {
"babel-eslint": "^10.0.1",
"babel-preset-es2015": "^6.24.1",
"eslint": "^5.16.0",
"eslint-plugin-react": "^7.13.0",
"nodemon": "^1.18.11",
"webpack-cli": "^3.3.1"
},
"dependencies": {
"@babel/core": "^7.4.4",
"@babel/node": "^7.2.2",
"@babel/plugin-proposal-class-properties": "^7.4.4",
"@babel/plugin-proposal-export-default-from": "^7.2.0",
"@babel/preset-env": "^7.4.4",
"@babel/preset-react": "^7.0.0",
"@material-ui/core": "^3.9.3",
"@material-ui/icons": "^3.0.2",
"axios": "^0.18.0",
"babel-loader": "^8.0.5",
"body-parser": "^1.19.0",
"dropbox": "^4.0.17",
"ejs": "^2.6.1",
"express": "^4.16.4",
"mongoose": "^5.5.7",
"morgan": "^1.9.1",
"node-fetch": "^2.5.0",
"query-string": "^6.5.0",
"react": "^16.8.6",
"react-dom": "^16.8.6",
"react-redux": "^7.0.3",
"react-router-dom": "^5.0.0",
"redux": "^4.0.1",
"redux-logger": "^3.0.6",
"webpack": "^4.30.0"
}
}
这是我发生错误的代码
import dbx from '../dropbox';
const getMember = async (req, res, next) => {
try{
res.status(201).json({
message: "Account created"
});
} catch(error){
console.log(error)
res.status(500).json({
error: error
});
}
}
export getMember;
解决方案
您应该使用export default getMember
orexport { getMember }
或export const getMember = async...
。
请参阅:https ://developer.mozilla.org/en-US/docs/web/javascript/reference/statements/export
推荐阅读
- javascript - 加载文件夹内容
- tfs - 在 TFS 2018 中的 Visual Studio 构建任务期间指定 DesktopPackageLocation 中的项目名称
- javascript - ES6 将组件包装在组件内
- jquery - 递归使用 jQuery .append()
- javascript - 创建用户在firebase中创建具有相同信息的身份不明的孩子
- c++ - 使用 FreeType 和 SDL2 渲染文本会生成白色方块而不是字符
- iis - IIS 中动态内容的压缩似乎不起作用
- firebase - Firebase Cloud Functions 中的用户注册源
- javascript - 传递一个 prop,传递时计算其值
- javascript - 无法在聚合物中获取视频元素