事件绑定
事件处理器:
绑定事件指令:<el @事件名="函数名()"><el>
特殊:
1、函数名的(),如果不传参数,其实可以省略
2、如果调用时,没有加(),我们的函数甚至会自动获得一个形参 - event对象
3、如果调用时,希望能使用event对象,又想传入自己的实参,那么你必须写为@事件名="函数名($event,实参1,实参2,...)"; - 强调:$event名字不能变!
事件修饰符:
@事件名.stop="函数名()"; - 阻止冒泡
@事件名.self="函数名()"; - 只有点击自己才会触发
@事件名.prevent="函数名()"; - 阻止默认行为
甚至按键修饰符:
@keydown.enter="函数名()" - 只有回车键才会触发
@keydown.ctrl="函数名()" - 只有回车键才会触发
除了这两个,还有很多:.esc .up .down .left .right .space .shift .delete,甚至还可以组合使用,甚至还可以.键码
都是简化event
表单控件绑定
多选框单选框
1、多选框:想要直到选中没有,现在非常简单
<input type="checkbox" v-model="变量">
变量值要求必须是一个布尔值,如果为true则为选中,false则为不选
2、如果多个多选框,希望判断选中否
<input type="checkbox" v-model="变量" value="值1">
<input type="checkbox" v-model="变量" value="值2">
<input type="checkbox" v-model="变量" value="值3">
此时的变量需要保存的是一个数组,数组根据传入的value,让对应的多选框勾选成功
arr=[]
3、单选框:判断选中谁
<input type="radio" v-model="变量" value="值1">男
<input type="radio" v-model="变量" value="值2">女
勾选中,此变量会自动保存单选框的value值
切记:1、单选框和多选框不要使用点击事件,否则时机不对(得到点击之前的东西),需要使用change事件
2、数据驱动页面
表单修饰符:
v-model.lazy="变量" lazy懒惰,只会在失去焦点时获取到用户输入的内容,提升性能
v-model.number="变量" 自动隐式转换为数字的操作
v-model.trim="变量" 自动去掉字符串开头结尾的空白字符