一、什么是Vue.js
Vue.js 是一套构建用户界面的框架,只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合(Vue有配套的第三方类库,可以整合起来做大型项目的开发)。
-- Vue是前端的主流框架之一,和 Angular.js、React.js 一起,并称为三大主流框架。Vue是目前最火的一个前端框架,React 是最流行的一个前端框架(React除了开发网站,还可以开发手机App,Vue 语法也是可以用于进行手机App开发的,需要借助于Weex)。
二、为什么使用框架
-
使用框架,能够提高开发的效率。
提高开发效率的发展历程: 原生JS ⋙ jQuery之类的类库 ⋙ 前端模板引擎 ⋙ Angular.js / Vue.js
-
能够减少不必要的DOM操作,提高渲染效率。(双向数据绑定的概念【通过框架提供的指令】,让前端程序员只需关心数据的业务逻辑,不用关心DOM是然后渲染的。)
三、框架和库的区别
框架:是一套完整的解决方案;对项目的侵入性较大,项目如果需更换框架,则需要重新构建整个项目。
库 / 插件:提供某一个小功能,对项目侵入性较小,如果某个库无法完成某些需求,可以很容易切换到其它库实现需求。
四、MVC和MVVM之间的区别
MVC:后端的分层开发概念
MVVM:前端视图层的概念,只要关注视图层分离,即前端视图层分为:Model、View、ViewModel。
五、Vue基本代码和MVVM间的对应关系
基本代码:
Vue.js 的核心是一个允许采用简洁的模板语法来声明式地将数据渲染进 DOM 的系统。
1)导入Vue包:
<script src="./js/vue.js"></script>
2)通过 new Vue 创建一个Vue实例
<script>
var vm=new Vue({
el:"#app",
data:{
msg:'Vue'
}
})
</script>
el :挂载点,表示当前vue实例要控制的页面区域,即Vue实例的作用范围。可以挂载到除了 <html> 和 <body> 之外的双标签(由“开始标签”和“结束标签”两部分构成,如<p></p>)之上,推荐使用 <div> 作挂载元素,因为其不带有额外样式。
data :存放el中所用的数据,数据可以为字符串、数组、对象等类型。
3)通过 Vue 提供的插值表达式 {{}} ,把数据渲染到页面上,不需手动操作 DOM 元素。注意:只在 el 挂载元素之内生效。
<div id="app">
<p>{{msg}}</p>
</div>
对应关系:
V 即 Vue实例所控元素区;VM 即 new出的 vm 对象;M 即 data 属性。
完整代码:
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<!-- 1.导入Vue包 -->
<script src="./js/vue.js"></script>
</head>
<body>
<!-- 3.渲染【V】 vue实例将会控制元素中所有内容 -->
<div id="app">
<!-- 通过Vue提供的插值表达式 {{}} ,把数据渲染到页面上,不需手动操作DOM元素 -->
<p>{{msg}}</p>
</div>
<script>
// 2.创建一个Vue实例 【VM】
// 在导入包之后浏览器内存就多了一个vue构造函数
var vm=new Vue({
// el 表示当前vue实例要控制的页面的区域
el:"#app",
// data 存放el中所用的数据 【M】
data:{
msg:'Vue'
}
})
</script>
</body>
</html>