vue的option
标签上的常用指令
插值语法: {{}} 文本传值,可以用函数传值
v-once : 元素和组件值只渲染一次,不会随着数据变化而改变
v-html="参数传值" 对传过来的值,以html的格式解析
v-pre 将标签的值以文本的格式显示
v-cloak 对于没有及时响应的js的标签,这里可以统一设置css
属性设置参数:
v-bind 加入属性绑定参数
(简单写法 :属性)
v-bind的数组参数,如果式true,显示该属性,flase取消该属性
3、v-bind加入函数
v-bind绑定css 对象语法 如果没有单引号,是传参
,数组语法
计算属性
option的一个选择项 computed
使用computed里面定义函数而不使用method,是因为method每次调用都执行,没有缓存
计算属性setter和getter
methods和computed的区别,computed有缓存的作用,页面只执行一次而method是每次都执行一次
es6语法
let修饰变量,const修饰常量
再es6前,只有var,为了避免数据被修改使用function(i)作为局部变量来获取值
这里可以用 let修饰变量,const修饰常量 替代
const一旦被赋值就不可修改
事件监听: v-on事件 语法糖 @事件
1、(@事件=.stop)在按钮的外面一层也有事件,如何实现点击按钮,不会触发外层的事件?
如图,增加.stop
2、(@事件=.prevent)如何阻止事件默认执行
3.事件只监听一次 事件.once
事件.
v-if="ture/false",可以控制是否显示
颗v-if是true那么v-else为false
登录切换小案例
<body>
<div id="app">
<span v-if="isuse">
<label for="username">用户账号</label>
<input type="text" id="username" placeholder="用户账号">
</span>
<span v-else="isuse">
<label for="username">用户邮箱</label>
<input type="text" id="username" placeholder="用户邮箱">
</span>
<button @Click="isuse = !isuse">切换账号</button>
</div>
<script src="../js/vue.js"></script>`
<script>
//let(接受变量) cont(接收常量)
const app = new Vue({
el:'#app',//挂在需要管理的数据V
data:{
isuse:true
}
})
</script>
v-if 和 v-show
v-if 隐藏时,没有dom, v-show只修改了dom属性
v-for遍历数组
<ul>
<li v-for="(i,index) in movies">{{index+1}}.{{i}}</li>
</ul>
获取对象的值
功能:数据以列表的形式展示
<div id="app">
<ul>
<li v-for="item in movie"> {{item}}</li>
</ul>
</div>
const app = new Vue({
el:'#app',//挂在需要管理的数据V
data:{
movie:['aaa','bb','cc']
}
})
表单控件: v-model(data数据的和页面双向绑定)也就是data的值和页面的值可以相互修改
v-model绑定页面的值
v-model可以通过v-on:input,绑定
v-model结合radio使用:
服务器提交,是按标签属性的name来提交的
labal标签的作用是绑定内部的input
v-model结合checkbox
v-model结合checkbox复选
v-model结合checkbox 点选使用的是boolean值,复选使用的是数组
结合select使用
值绑定:(标签上的值和data的值绑定)
动态绑定item的值,后端可以灵活地传值过来
修饰符:v-model.lazy 实现数据地懒加载,只有在促发回车或者鼠标时,才记载到data
v-model.number v-model默认传值为字符串,.number改为数值
v-model.trim 去除空格
综合功能:计数器的实现
组件化:
主键的使用:可以提高代码的可移植性
全局主键可以在多个绑定的vue实例中使用
局部主键在vue内注册
子组件和父组件(也就时代码模块的结合)
子组件里面注册父的组件即可
作业:
1、展示列表,点击哪个,哪个就是红色
提示