一、框架和库
框架 vue 拥有完整的解决方案 我们写好人家调用我
库 jQuery underscore zepto animate.css 我们调用它
二、渐进式(渐进增强)
vue全家桶 vuejs + vue-router + vuex + axios
通过组合 完成一个完整的框架
三、MVC(backbone)单向
model 数据
view 视图
controller 控制器
四、MVVM(angular,vue)双向
model 数据
view 视图
viewModel 视图模型
五、安装vue
- cdn的方式 https://cdn.jsdelivr.net/npm/vue/dist/vue.js
- npm安装
1.node package manager:npm init
初始化会产生一个package.json的文件,这个文件用来描述项目的依赖,不能有大写、特殊字符、中文,而且不要和安装的包的名字相同
2.npm install vue
六、初识vue
<div id="app">
<!-- 小胡子语法 表达式 可以放赋值、取值、三元 -->
{{msg}}
</div>
<script>
let vm=new Vue({
el:'#app',//告诉vue能管理哪个部分,querySelector
data:{//data中的数据会被vm所代理
msg:'hello'//可以通过vm.msg取到对应的内容
}
});
</script>
let vm = new Vue({
el: '#app',
data: {
a:[1,2,3,4,5]
}
});//去改变数组中的某一项是监控不道到的,也不能使用改变数组长度的方法
//错误:vm.a[0]=100;vm.arr.length-=2;
//使用变异方法:pop push shift unshift sort reverse splice
//vue会循环data中的数据(数据劫持),依次的增加getter和setter
let vm = new Vue({
el: '#app',//告诉vue能管理哪个部分,querySelector
data: {//data中的数据会被vm所代理
p:{}
}
});
//使用变量时,先要初始化,否则新加的属性不会导致页面刷新
//vm.$set(vm.p,'school',1);//此方法可以给对象添加响应式的变化
//替换原对象
vm.p={school:'x',age:8,address:'xxx'};