vue 如何和 nodejs 前后端结合?
发布于 6 年前 作者 JZLeung 44398 次浏览 来自 问答

能在 Express 中使用 vue 吗?总不能新开一个项目写 vue 单页面应用,然后每次 build 完之后都要将 vue 的文件复制或者 build 到express 中吧? 有没有更加简便的结合方法?

23 回复

前后端完全分离,分别部署,Vue部分通过API接口调用Express的服务就行

你可以看看Vue的服务端渲染,这里是DEMO,代码在这里<br/><br/><a class=“tag” target=“new” href=“https://github.com/BubblyPoker/cnode-vue”>来自 cnode-vue</a>

@hapiman 那岂不是要启动2个server?

@BubblyPoker 好的,谢谢,我看看。

@JZLeung 不需要,你甚至可以设置build的路径,不需要拷贝…

一个前端框架,一个后端框架,为什么会有疑惑呢?你问的感觉就像jquery怎么和express配合一样奇怪。

@JZLeung 前端部署时可以不启动server,直接使用nginx配置访问静态资源,因为 vue或者react使用前端渲染的方式就是一堆的js代码而已;你通过启动前端启动server的方式也可以。

看你是不是需要vue路由和server路由共存了,是的话,要考虑服务器端路由一致性问题;否则,vue就是个普通的js文件,如此而已~

@DevinXian 我想楼主的意思是搞一个SPA,有很多.vue组成,最后由webpack打包,而不是像jQuery那样直接引入一个js文件使用 我也不懂 难道是使用webpack-dev-server运行吗? 现在也没搞懂官方的推荐是什么样的

@klausgao 额,我的意思是,能不能在express中直接写vue文件,然后可以直接build成普通的html 和 js 文件。

@hapiman 就是可以分开两个项目,将vue文件build到express的静态文件中去,然后直接访问vue build后的静态文件对吧?

@JZLeung 不行的. 需要用webpack把.vue打包成.js, 然后在index.html引入.

先用webpack将vue等相关文件打成包,然后index.html直接引用这些包,然后直接express开个server,然后访问index.html,就可以了<br/><br/><a class=“tag” target=“new” href=“https://github.com/BubblyPoker/cnode-vue”>来自 cnode-vue</a>

<div><p><!-- react-text: 4902 -->数据打在页面上,vue去调用数据<!-- /react-text --></p></div>

你这个问题问的,简直了…我这个开源项目完美解决你的问题

https://github.com/qxl1231/generator-loopback-vue.git

@yinxin630 好吧,现在直接弄成使用Nginx访问打包好的静态文件,然后通过API和后台交互。 自豪地采用 CNodeJS ionic

webpack dev server 的proxy 功能完美解决 https://webpack.github.io/docs/webpack-dev-server.html { devServer: { proxy: { ’/api’: { target: ‘http://localhost:300’, secure: false } } } }

配合?

ajax ws

主要通过这个吧.

即使是 同构项目, 通讯 还是通过 ajax 和 ws 进行的.

ajax 又有 restfull 和 graphql

也就是基本都是用API进行交互。 自豪地采用 CNodeJS ionic

直接和后台分成两个项目就行了 <br>来自<a href=“https://lzxb.github.io/vue-cnode/” target="_blank">vue-cnode手机版</a>

各位VUE高手,有没有找工作的呀?

回到顶部