javascript - 在 express 之外的脚本中从 express 应用程序导入模块时出现问题

标签 javascript node.js express

我有一个 vanilla Express 应用程序,它的 package.json 看起来像这样:

{
  "name": "express-app",
  "version": "1.0.0",
  "main": "app.js",
  "dependencies": {
    ...
  },
  "devDependencies": {
    ...
  },
  "scripts": {
    ...
  },
}

我想在 express 应用程序之外编写一个脚本,从 express 应用程序中导入一个模块。该模块位于 ./src/model/Example.js该模块还导入各种其他模块。
脚本位于 ./scripts/test.mjs并且做:import Example from '../src/models/Example.js';但是,我从 Example.js 开始第一次导入。 :
SyntaxError: Cannot use import statement outside a module
如何构建它以使脚本可以正确导入模块?

最佳答案

这是因为您在 vanilla JS 中的项目,import 语句不起作用。您可以使用parceljs一个支持 ES6 及以上语法的零配置包捆绑器,首先通过运行将其添加为开发依赖项

npm install parcel-bundler --save-dev
然后将脚本添加到您的 package
{
  "scripts": {
    "dev": "parcel <your entry file>",
    "build": "parcel build <your entry file>"
  }
}
用代码中的主文件替换入口文件(例如:app.js)

关于javascript - 在 express 之外的脚本中从 express 应用程序导入模块时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68103946/

相关文章:

javascript - 数据表无法按日期搜索

node.js node-cassandra-client 请求失败

node.js - Azure Pipelines 生成任务测试失败,错误为 : "Must initialize"

javascript - 如何设置这个 javascript 倒数计时器的样式

javascript - 在ajax成功中创建 session 变量

javascript - 解析数据库 javascript "OR"查询

node.js - Node.js 中的一个大应用程序与多个小应用程序

javascript - 无法让按钮在 EJS 模板中工作

javascript - Tailwind CSS 不能用 React 和 Express 编译?

javascript - 使用 Express 将路径重定向到基本 "/"路径