【问题标题】:Best practice for Vue.JS + Node.js backend in ONE SINGLE Heroku pod?一个 Heroku pod 中 Vue.JS + Node.js 后端的最佳实践?
【发布时间】:2018-08-15 18:22:45
【问题描述】:

This blog post I found today 为 React 显示了类似的内容。他从一个节点项目开始,然后在其中的子文件夹中创建一个反应项目。加上一些代理配置的东西。

大约 10 天前我还没有这么聪明,但这就是我为 Vue 所做的。

  1. 创建了一个 Vue 项目
  2. 为生产而构建
  3. 在 Vue 构建过程创建的 dist 文件夹中添加了一个 package.json 和一个 server.js
  4. package.json 包含这两行:"postinstall": "npm install express""start": "node server.js"

瞧! Express 在内部侦听 8081(但 Heroku 将其翻译为 80/443),我可以从 Node 后端获得 Vue 前端的响应。所以从技术上讲它是有效的。但我不觉得这是一个很好的解决方案。有点凌乱,闻起来像绝望的黑客和修补。

当然,关键是要避免在一个原本很小、几乎没有重量的个人项目中使用两个不同的 Heroku pod。一个用于前端部分,一个用于后端。

你能告诉我更好的吗?

【问题讨论】:

    标签: node.js rest heroku vue.js vuejs2


    【解决方案1】:

    您可以使用vue-cli project

    然后您使用您的 express 项目创建一个子文件夹并启动您的脚本(在包 json 中),例如:

    npm run vueproject && npm run expressproject

    您的两个项目将同时启动。

    你必须:

    • 为每个项目使用不同的端口。

    • expressproject 中安装依赖项 vueproject 包。

    • 知道这样做不是一个好习惯。

    【讨论】:

    • 所以基本上不建议这样做,如果您坚持这样做,请遵循与 React 链接文章中相同的模式。但完美的解决方案是将前端和后端分开。对吗?
    • 对,你应该创建一个类似于 API 的单个项目,以及第二个(或更多)类似于 UI 的项目
    猜你喜欢
    • 2013-07-28
    • 2013-03-13
    • 2015-04-23
    • 2017-03-18
    • 1970-01-01
    • 2016-05-19
    • 2021-06-19
    • 2020-12-04
    • 1970-01-01
    相关资源
    最近更新 更多