亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Nodejs運行js報錯:Cannot use import statement outside

Nodejs運行js報錯:Cannot use import statement outside

qq_遁去的一_1 2023-04-27 15:00:26
我無法運行 node src/index.js 它會拋出錯誤。但是nodemon沒問題。我如何運行它的生產版本?PS D:\Development\server\Image hosting\node-express-server-rest-api-master> node   src/index.jsD:\Development\server\Image hosting\node-express-server-rest-api-master\src\index.js:2import cors from 'cors';SyntaxError: Cannot use import statement outside a module這是一個非常簡單的項目和文件:我嘗試了“type”:“module”,但它拋出了新的錯誤。盡管這只是一個示例項目,但沒有任何效果包.json:{"name": "node-express-server-rest-api","version": "0.1.0","description": "Node imgs hosting","scripts": {    "start": "nodemon --exec babel-node src/index.js",    "test": "echo \"No test specified\" && exit 0",    "production": "NODE_ENV=production node src/index.js",    "win-prod": "set NODE_ENV=production && node   src/index.js"},"keywords": [],"author": "","license": "ISC","devDependencies": {    "@babel/core": "^7.11.6",    "@babel/node": "^7.0.0",    "@babel/preset-env": "^7.1.6",    "@babel/register": "^7.0.0"},"dependencies": {    "body-parser": "^1.19.0",    "cors": "^2.8.5",    "dotenv": "^8.2.0",    "express": "^4.17.1",    "follow-redirects": "^1.13.0",    "mkdirp": "^1.0.4",    "uuid": "^7.0.3"  } }索引.jsrequire('dotenv/config');import cors from 'cors';import express from 'express';import routes from './routes';const bodyParser = require("body-parser");const app = express();app.use(cors());app.use(bodyParser.urlencoded({ extended: false }));app.use(bodyParser.json());app.use((req, res, next) => {// req.context = {//     models,//     me: models.users[1],// };next();});app.use('/upload', routes.upload);app.listen(process.env.PORT, () => console.log(`Example app listening on port ${process.env.PORT}!`),);
查看完整描述

1 回答

?
皈依舞

TA貢獻1851條經驗 獲得超3個贊

我會在這里發布答案。

添加此模塊:npm i esm

在根文件夾下再添加一個文件,我將其命名為 main.js:

require = require("esm")(module /*, options*/ )module.exports = require("./src/index.js")

從這里更改 package.json 啟動腳本:

 "win-prod": "set NODE_ENV=production && node -r src/index.js"

進入這個:

 "win-prod": "set NODE_ENV=production && node -r esm main.js"


查看完整回答
反對 回復 2023-04-27
  • 1 回答
  • 0 關注
  • 699 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號