素材牛VIP会员
vue.js是什么?为什么要在nodejs中安装?
 街***铃  分类:Node.js  人气:1040  回帖:7  发布于6年前 收藏

想学习下vue.js,我理解的它是一个前端的框架,主要作用是对数据的处理,和juqery类似,所以不太理解为什么要在nodejs中npm install vue呢?在html文件中引入vue.js不是就可以了吗?
另外搭建一个web应用肯定需要路由功能,想用express框架来做路由和数据库交互,那么express中提供的jade木板引擎是不是就和vue.js冲突了。
总觉得不太理解vue.js是什么。。。尤其是需要在服务端安装这一点。。。希望大家能解答下

讨论这个帖子(7)垃圾回帖将一律封号处理……

Lv4 码徒
sy***88 软件测试工程师 6年前#1

刚好看到一篇文章

PHP framework Laravel selects Vue.js as default JavaScript framework

PHP的Laravel框架选择Vue.js作为默认的JS框架,这就很简单了。Laravel运行在服务端,选择Vue.js作为JS框架,负责前端实现。

其实我更倾向认为Vue.js是个轻量的JS库。

Lv1 新人
青***8 页面重构设计 6年前#2

首先vue.js 是库,不是框架,不是框架,不是框架。

vue.js 下载过来直接在html中引入就好了并不一定要npm install vue.

vue.js 有路由的 叫vue-route.js,vue.js也有数据请求 叫vue-resource.js

Lv5 码农
Y2***Y2 JS工程师 6年前#3

vue.js是一个轻量级的mvvc框架, 用来做DOM元素和数据绑定的。 有了vue.js, 前端开发基本上只要管理好模型层里的数据就好, DOM之类的就交给vue.js吧
在node里安装成为一个node_modules是为了使用require语法。 这样的话可以直接在HTML文件里require('Vue'), 然后前端打包工具, 比如browserify之类的, 看到这行字会自动把vue.js打包进bundle.js

Lv6 码匠
de***oo 页面重构设计 6年前#4

上面的的回答都不错。。。再多提两句吧,你理解的nodejs是什么?nodejs可以当作服务端语言没错,但是目前使用nodejs最多的场景是前端构建工具,比如webpack,gulp。。而vue的组件要编译势必要借助webpack,所以肯定要提供npm的安装方式啊

另外你提到jade,这点可能你概念又有点不太清楚了。jade和ejs之类的模板引擎属于后端模版引擎,在服务端渲染,把模版转化为html,输出到浏览器。

而vue属于前端库,也有模版渲染的功能,但是vue是在前端渲染的,把一些指令通过js渲染为html并替换dom。

所以vue和jade不冲突,但是没必要两个都用。

Lv6 码匠
天***月 职业无 6年前#5

学习了。。。。。

Lv1 新人
十***刻 产品经理 6年前#6

前面的回答也很明了,在这里多添几句。
Vue.js可以在html里引用,使用npm引入是方便包管理。
等到应用需要的库和框架多起来后,一个个从html里引入就不方便了。
所以用到打包工具比如webpack,可以直接require引入之后将不同模块打包成单个js文件。同时这些工具提供各种自动化处理,让前端开发更爽。
最后Vue.js是数据驱动,和JQuery思路不同,你几乎不需要自己进行复杂低效的dom操作,开发简介明了。从这一点上说,可以基本抛弃JQuery了。
我做过的一个项目,也是node.js+express,用了vue-router和vue-resource,前者替代express里的路由,后者替换$.ajax(),node+express只负责服务器和数据库交互,不处理路由,前后端基本是分离的。
jade模板确实是个问题,因为用的是组件开发,每一个组件是单独vue文件,所以大概有两种方法,一是不用模板引擎(直接通过res.sendFile()),二是只有主页用jade生成,这样和vue也不会冲突。其实这些写熟悉了都不是事儿。

Lv6 码匠
yj***23 站长 6年前#7
  1. 前端文件也是放在服务端的呀,npm install的vue用来被webpack打包进前端js。

  2. 是冲突了。

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取