方式1:直接CDN引入(学习时使用)
****方式2:下载引入: https://cn.vuejs.org/v2/guide/installation.html****
方式3:NPM按装(通过webpack和CLI使用)
说明: 基础学习用前两总方式使用,进阶时用方式3.
**学习视频:https://www.bilibili.com/video/BV15741177Eh**
ES6相关的:
2.export导出,import导入.
3.箭头函数
4.箭头函数的this是向外层作用域中,一层层查找this,直到this的定义。
(一) 声明式渲染
(二.1) 模版语法:插值操作****
1.mustache语法: {{ }}, 可以写变量,也可以写表达式 {{ a+b }}
2.v-once: 只渲染元素和组件一次,不需要表达式.
姓名: {{msg}}
3.v-html: 填充HTML片段,内容按普通 HTML 插入渲染,不安全,本网站内部的数据可以使用,不用垮域的数据.
4.v-text: 直接用 v-text 就不会有闪动问题,填充纯文体.
{{msg}}
5.v-pre:显示原始的信息,跳过编译过程,填充原始信息,不需要表达式.
{{ 显示原始的信息 }}
6.v-cloak:属性选择器,解决插值表达式闪动的问题",在样式中提供指令,这个指令保持在元素上直到关联实例结束编译,一般不用
(二.2) 模版语法:绑定属性
1.v-bind: 动态地绑定一个或多个 attribute,或一个组件 prop 到表达式,给标签属性赋值。
样式绑定数组语法:不常用,写死的
(二.3) 模版语法:计算属性
1.computed: 计算属性的结果会被缓存,除非依赖的响应式 property 变化才会重新计算.
var vm = new Vue({
data: { a: 1 },
computed: {
// 仅读取
aDouble: function () {
return this.a * 2
},
// 读取和设置
aPlus: {
get: function () {
return this.a + 1
},
set: function (v) {
this.a = v - 1
}
}
}
})
vm.aPlus // => 2
vm.aPlus = 3
vm.a // => 2
vm.aDouble // => 4
(二.4) 模版语法:事件监听
1.v-on: 绑定事件监听器。事件类型由参数指定。表达式可以是一个方法的名字或一个内联语句,如果没有修饰符也可以省略。
@keyup.enter="onEnter">
@keyup.13="onEnter">
2.v-on修饰符
.stop
- 调用 event.stopPropagation()
。.prevent
- 调用 event.preventDefault()
。.capture
- 添加事件侦听器时使用 capture 模式。.self
- 只当事件是从侦听器绑定的元素本身触发时才触发回调。.{keyCode | keyAlias}
- 只当事件是从特定键触发时才触发回调。.native
- 监听组件根元素的原生事件。.once
- 只触发一次回调。.left
- (2.2.0) 只当点击鼠标左键时触发。.right
- (2.2.0) 只当点击鼠标右键时触发。.middle
- (2.2.0) 只当点击鼠标中键时触发。.passive
- (2.3.0) 以 { passive: true }
模式添加侦听器**3. **v-on事件函数的调用传参方法:
(二.5) 模版语法:条件判断
1.v-if/v-else-if/v-else:根据表达式的值的 truthiness 来有条件地渲染元素.
2.v-show: 根据表达式之真假值,切换元素的 display
CSS property.v-if元素的删除增加,v-show是元素一直都在.只是改变样式,操作频率高时用v-show,一次性切换用v-if,v-if一般用得多.
(二.6) 模版语法:循环遍历
1.v-for: 基于源数据多次渲染元素或模板块,另外也可以为数组索引指定别名 (或者用于对象的键).
为当前遍历的元素提供别名:
另外也可以为数组索引指定别名 (或者用于对象的键):
2.v-for
的默认行为会尝试原地修改元素而不是移动它们。要强制其重新排序元素,你需要用特殊 attribute key
来提供一个排序提示:
3.总结整理响应式数组方法
(二.7) 模版语法:过滤器
1. 过滤器可以用在两个地方:双花括号插值和 v-bind
表达式 (后者从 2.1.0+ 开始支持)。过滤器应该被添加在 JavaScript 表达式的尾部,由“管道”符号指示:
{{ message | capitalize }}
你可以在一个组件的选项中定义本地的过滤器:
filters: {
capitalize: function (value) {
if (!value) return ''
value = value.toString()
return value.charAt(0).toUpperCase() + value.slice(1)
}
}
2.ES6中取小数位数方法: num.toFixed(2),数组计算的几个高阶函数:filter/map/reduce
(二.8) 模版语法:双向绑定
1.v-model: 随表单控件类型不同而不同,在表单控件或者组件上创建双向绑定
2.v-model修饰符
预期:随表单控件类型不同而不同。
限制:
.lazy - 取代 input 监听 change 事件
.number - 输入字符串转为有效的数字
.trim - 输入首尾空格过滤
用法:
在表单控件或者组件上创建双向绑定。细节请看下面的教程链接
手机扫一扫
移动阅读更方便
你可能感兴趣的文章