Vue—03—事件监听v-on;选择语句v-if;v-show;循环语句v-for;表单v-model;


 

一、事件监听v-on:

1、什么叫事件监听

v-on参数,就是可以监听我们触发的各种事件,比如点击click事件、键盘keyup事件;监听的原理是什么?我猜是因为我们的每一个事件都会产生一个对象,v-on捕获到了相关的对象就算是监听到了相关的事件;

2、v-on参数

 (1)不需要参数时,可以简写

 (2)需要参数时,加上括号,括号里面加参数即可

 (3)需要参数时,且需要event事件参数,使用$event参数

每当我们在浏览器点击某个按钮,拖拽某个页面时,浏览器会自动为我们生成一个event对象,也就是事件对象,有的时候我们需要这个对象,所以可以使用$event传递下去;

3、v-on的修饰符

(1)stop修饰符:可以阻止事件冒泡

此例中,如果我们不加stop,那么点击按钮的时候,btnclick和divclick两个事件都会被监听到;这就是因为事件冒泡;

 (2)prevent修饰符:

阻止默认的动作,比如form表单中当我们一点击“提交”时,就会自动帮助我们把数据收集起来提交,如果这个时候我们想自己定义一个submitclick事件去提交,则要把默认的阻止掉,可以使用prevent修饰符;

 (3)keycode/keyalias修饰符:

这个不是用在click事件的,这个是用在keyup事件的,主要是监听键盘敲击某个特殊的键的时候才会触发,比如q键,必去a键,比如回车键等;

once修饰符:

只触发一次回调函数

(4).native修饰符:

监听子组件时的一些事件比如像click这样原生事件。

我们需要写《ccpn   @click.native="m1" 》《/ccpn》

如果是监听子组件的非原生事件,则不需要,比如子父组件通信时,介绍子组件的通信内容《ccpn   @acceptChildrenMsg="m1" 》《/ccpn》

 

 

 二、条件判断v-if

当然上文那种写法比较麻烦,建议用下面这种计算属性的方式写;

 

 

三、v-show

v-show和vif的区别

 

 

 

四、循环语句v-for

1、遍历数组的两种方式:

第一种只取出数组的元素,第二种取出元素和下标;

 

 2、遍历对象的三种方式

第一种只取出对象的value,第二种取出对象的value和key,第三种取出对象的value和key和index;

3、使用v-for时,建议给标签属性加上key属性

这个key的话最好是固定唯一的;加上了key简单来说就是性能很高;

 

 使用v-bind语法,绑定一个:key属性,vue会自动去解析,并把值加到key上的;

 

 4、v-for遍历数组再探讨

因为v-for最主要用的还是遍历数组;

使用v-for遍历数组时,发生的改变有些是响应式的,即发生完后立即修改,

 splice方法很强,可以一个方法完成dql操作,第一个参数是其实下标,从第二个参数开始有变化了;

 但有些不是的,比如通过索引下标修改数组元素的值,就无法响应;

 

 

 

 

五、表单v-model

1、本质

注意是表单不是表格;

v-model是双向绑定,在表单里或者说对变量的值(也就是input框的value属性)进行修改,vue的data里的值也会改变;

其实v-model是一个语法糖,它的本质是通过输入框中v-bind:value和v-on:input实现;

如果实在无法理解v-model就用这两个属性绑定理解;

 

 

2、v-model如何结果单元框redio使用

当input的type为redio时会是一个单选框,单选框的值也就是value无论写什么都没法显示的,只会有一个小圆框;但是使用v-model双向绑定的时候,任然可以和value属性的值相匹配来决定那个小圆框会被选中;

 

 

3、v-model如何结合多选框checkbox使用

这里主要是用v-model的时候记得绑定的变量是一个数组类型了

 

 

4、v-model如何结合下拉框select使用

第一个是单选下拉框,第二个是多选下拉框;

多选的时候一样,绑定的要是数组;

 

 

 5、v-model的修饰符

 

posted @ 2021-08-26 15:36  Eric-Shen  阅读(600)  评论(0)    收藏  举报