【问题标题】:Unexpected token export when deploying a MERN app to digitalocean将 MERN 应用程序部署到 digitalocean 时出现意外的令牌导出
【发布时间】:2021-06-10 14:53:19
【问题描述】:

我正在尝试将 MERN 应用程序部署到数字海滴。我使用 nodemon 并同时通过“npm run dev”运行我的应用程序。在我的本地机器上运行时一切正常,但是当我 git clone 项目到 droplet 并尝试 npm run dev 在远程服务器上运行应用程序时,我得到:

SyntaxError: Unexpected token export

我什至删除了发生错误的中间件并尝试再次运行,但错误发生在我代码的其他地方。从昨天开始我就一直坚持这个。你有什么想法吗?

【问题讨论】:

  • @andrey 非常感谢您的回答。它解决了我的出口问题。只是为了确保,我是否需要通过在我的前端运行“npm run build”来创建一个构建文件夹并将构建文件夹手动添加到包含我的 server.js (index.js) 文件的目录中?因为现在我收到与前端启动脚本相关的错误,而且环境变量未定义!!!

标签: node.js npm syntax-error digital-ocean mern


【解决方案1】:

您应该在服务器上检查您的 Node 版本。很可能它较旧,并且您正在使用 ES6 导出。

如果你得到了支持 ES6 的正确版本,那么你应该确保你已经启用了它(因为 CommonJS 是默认选项)。来自the docs

  • .mjs 结尾的文件。

  • 当最近的父 package.json 文件包含值为 "module" 的顶级“类型”字段时,以 .js 结尾的文件。

  • 字符串作为参数传入--eval,或通过STDIN 传送到node,带有--input-type=module 标志。

【讨论】:

    猜你喜欢
    • 2020-04-06
    • 1970-01-01
    • 2018-11-24
    • 2020-05-31
    • 1970-01-01
    • 1970-01-01
    • 2021-06-22
    • 2021-01-01
    • 2018-12-08
    相关资源
    最近更新 更多