-
Vue.js是什么?
Vue是一个构建用户界面(UI)的[渐进式]JavaScript框架 -
库和框架的区别
2.1 库(Library),本质上是一些函数的集合。每次调用函数,实现一个特定的功能,接着把控制权交给使用者
代表:jQuery
jQuery这个库的核心:DOM操作,即:封装DOM操作,简化DOM操作
2.2 框架(Framework),是一套完整的解决方案,使用框架的时候,需要把你的代码放到框架合适的地方,框架会在合适的时机调用你的代码
代表:vue
框架规定了自己的编程方式,是一套完整的解决方案
使用框架的时候,由框架控制一切,我们只需要按照规则写代码
框架的侵入性很高(从头到尾)
-
MVVM的介绍
MVVM,一种更好的UI模式解决方案,MVVM通过数据双向绑定让数据自动地双向同步MVVM ===> M / V / VM
M:model数据模型
V:view视图
VM:ViewModel 视图模型 虚拟domV(修改数据) -> M
M(修改数据) -> V
数据是核心例子 :
hello world 实现
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.js"></script>
<title></title>
</head>
<body>
<!-- vue所管理的边界 -->
<div id="app">
{{title}}
</div>
</body>
<script>
//通过vue实例去渲染vue所管理的边界
new Vue({
el:'#app',
data(){
return{
title:'hello world vue'
};
}
})
</script>
</html>
双向数据绑定
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.js"></script>
<title></title>
</head>
<body>
<!-- vue所管理的边界 -->
<div id="app">
{{msg}}<br>
{{msg}}<br>
{{msg}}<br>
橙橙最牛<input v-model="msg" />
</div>
</body>
<script>
<!--通过vue实例去渲染vue所管理的边界 -->
new Vue({
el:'#app',
data(){
return{
msg:''
};
}
})
</script>
</html>
结果:
V-on指令
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.js"></script>
<title></title>
</head>
<body>
<!-- vue所管理的边界 -->
<div id="app">
<input v-model="title" /><br>
<button v-on:click="getData">获取文本框的值</button>
</div>
</body>
<script>
//通过vue实例去渲染vue所管理的边界 es6
new Vue({
el:'#app',
data(){
return{
title:''
};
},
methods:{
getData:function(){
alert(this.title);
}
}
})
</script>
</html>
钩子函数