有没有办法打包使用express和ejs的nodejs应用程序?

时间:2019-06-29 04:36:10

标签: node.js express ejs parceljs

我正在尝试使用epxress和ejs打包我的nodejs应用程序,但是在此过程中出现了包裹错误

如果我使用标准方式,我的应用程序已按预期运行: node app.js

但是,当我尝试使用包裹运行它时,出现错误。

我的package.json(仅显示相关部分):

  "scripts": {
    "start": "parcel views/index.ejs",
    "build": "parcel build --public-url . views/index.ejs"
  },
  "dependencies": {
    "parcel-plugin-ejs": "^0.2.0",
    "parcel-plugin-ejs-template": "^0.1.1",
  },
  "devDependencies": {
    "parcel-bundler": "^1.12.3"
  }

我希望我的应用程序能够成功打包,并能够通过提供的网址进行访问。

但是,我遇到此错误:

$ npm run start

> my_project@1.0.0 start /home/user/my_project
> parcel views/index.ejs

Server running at http://localhost:1234 
?  /home/user/my_project/views/index.ejs: item is not defined
    at eval (eval at compile (/home/user/my_project/node_modules/ejs/lib/ejs.js:618:12), <anonymous>:5:8)
    at returnedFn (/home/user/my_project/node_modules/ejs/lib/ejs.js:653:17)
    at EjsAsset.generate (/home/user/my_project/node_modules/parcel-plugin-ejs-template/EjsAsset.js:30:12)
    at <anonymous>

其中的项目只是我正在使用res.render()从后端发送的产品列表,以创建下拉列表。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

如果您更改了开始 build 脚本的部分,其中您具有 views / index.ejs index索引。 ejs