首页 > 解决方案 > 导入快递时出现意外的标识符

问题描述

我是 js 和 node.js 的新手。当我尝试使用“nodemon server.js”命令启动服务器时出现意外标识符错误。安装了快递。
这是 server.js 文件:

import express  from   'express' ; 
import mongoose from 'mongoose' ;


const app = express();
const port = proces.env.PORT || 8001 




app.get('/', (req, res) => res.status(200).send("hello ozzy") ); 


// Listener
app.listen(port, () => console.log(`listening on localhost: ${port}`)); 

这是我的 package.json 文件:

{
 "name": "bookvisor-backend",
 "version": "1.0.0",
 "description": "",
 "main": "server.js",
 "type": "module",
 "scripts": {
  "test": "echo \"Error: no test specified\" && exit 1",
  "start": "nodemon server.js"
},
"author": "ozan",
"license": "ISC",
"dependencies": {
  "express": "^4.17.1",
  "mongoose": "^5.11.18"
},
"devDependencies":{
  "nodemon": "^2.0.7"
 }
}

这里的错误信息

import express  from   'express' ; 
   ^^^^^^^

SyntaxError: Unexpected identifier
at Module._compile (internal/modules/cjs/loader.js:723:23)
at Object.Module._extensions..js 
(internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
at startup (internal/bootstrap/node.js:283:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
[nodemon] app crashed - waiting for file changes before starting...

为什么 ?

标签: node.jsexpresspackage.json

解决方案


我认为您已经找到了解决方案,但是对于可能遇到此问题的人,我遇到了完全相同的问题,并且我做的所有事情都没有奏效,而且我遇到了猫鼬问题,这给我一个错误,说找不到 TextEncoder,但是当我更新了 NODE 和 NPM,所有错误都消失了。

编辑

我遇到了什么问题?

  • 即使我"type": "module"package.json
  • 导入猫鼬引发错误new TextEncoder() is not definned

我尝试了什么?

  • 删除并重新安装所有软件包。失败的
  • 删除节点模块并重新安装它。失败的
  • 完全删除项目并重新编码。失败的

解决方案是什么?

只是更新npmnode版本。就我而言,Ubuntu,

节点:

  • sudo npm cache clean -f
  • sudo npm install -g n
  • sudo n stable

npm:

  • sudo npm install -g npm

推荐阅读