繁体   English   中英

我可以在sails.js 资产目录中轻松运行vue.js webapp 吗?

[英]Can I easily run a vue.js webapp in a sails.js assets directory?

我正在学习如何使用Sails.jsvue.js。 所以我正在尝试开发一个小应用程序,其中有一个 vue.js 应用程序位于sails.js 的assets/目录中。 这个想法是用同一台服务器(命令Sails Lift )为两个应用程序提供服务,但我在让它工作时遇到了一些麻烦。

原因是因为sails服务器可以服务我vue app的index文件(assets/web/dist/index.html),但是其他vue资源会404,因为我的vue index.html文件会要求localhost:1337这样的地址/static/etc而不是localhost:1337/web/dist/static/etc

所以我可以让它在assets/web (我的 vue 目录)中运行npm run-script build并在我的 assets 目录中创建一个assets/web/dist的副本。 通过这种方式,我的 vue 应用程序由sails.js 开发服务器提供服务。 但是每次更改某些内容时,我都必须“编译”vue 并复制它。 这对生产来说很好,但对开发来说很糟糕。

是否有一些简单的方法可以仅使用一个开发服务器来开发此应用程序,还是应该将它们拆分为两个应用程序并分别为它们提供服务(在开发环境中)?

我使用的是sails v1.0.2 和最新的bootstrap-vue(目前是bootstrap ^4.0.0-beta.2 和vue ^2.5.2)

(它可以在https://github.com/lampsbr/projetao 中找到

您应该拆分它,例如frontend / backend目录,并且最好为两台服务器设置不同的终端会话,否则可能会变得混乱。 在我使用 Vue.js 和 Sails.js 的示例项目中,仍然可以同时启动两者。 但这仅适用于非常快速的更改。

这就是我在package.json做法:

"scripts": {
    "dev": "cd backend && npm run dev & cd frontend && npm run dev",
    "install": "cd frontend && npm i && cd ../backend && npm i && cd .."
},

你只需要在生产时编译你的 Vue.js 应用程序,正如你提到的,它会被推送到 Sails.js 的assets目录中。 也就是说,只有您编译的 Vue.js 应用程序应该位于您的资产目录中,没有源文件!

另一种常见的方法是在您的 Sails.js 目录中有一个client目录。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM