v-on监听 和 methods函数仓库
v-on指令,我们一般用在按钮标签上,也就是button等。可以对用户的点击等操作 进行反馈。那么它绑定的是什么呢?当然可以是 函数了!
比如:v-on:click="reverseMessage" ,其中v-on是指令,click是参数,值是一个函数名,函数名叫reverseMessage,字面意思是要反转某个字符串。
比如我们要反转这个字符串变量:message
从上图的例子中,我们选确认我们要更改的这个变量message的来龙去脉。它在data中声明,默认值是:“Runoob”,然后再p标签中显示,在右侧的运行结果页面上也可以看的到 这个 Runoob。
然后我们的button按钮,通过v-on指令,调用reverseMessage函数,来进行反转。
那么这里我们要学习俩个知识点了
1.函数写在哪
首先要明确一点,这个函数,不能让我们随便直接找个script里就直接写function reverseMessage(){}。这是肯定不行的,因为vue它规定,这里的函数只会在指定的位置去找,不在这个指定位置就报错。
这个指定位置就是vue构造器中的新的一个组成部分,叫methods,翻译过来就是方法。
methods和data一样,都是用个大括号包裹自己的内容。methods的内容就是一个一个的 js函数了。当然这个js函数内的写法也是要用js语法的,所以我说想绕过学习js,直接用vue去前端开发是不对的。
如下图,就在这里写即可。
注意这个函数的结构:函数名+冒号+function+小括号+大括号。
其中小括号可以放一些入参,大括号为函数真正的内容。
2.函数怎么写
这里具体怎么实现一个字符串的反转,我们前面章节已经学习过,属于js语法的内容。但是这里要学习个新知识点,就是this.
这里直接用this,有的同学就问,这个this.是什么,是变量么?没看到在哪声明啊?
其实这个this并不是变量,也不用声明,因为它就是整个vue构造器的化身,你可以用this.变量名的方式,直接调用控制编辑 这个vue构造器内的一切变量属性等。作用就相当于我们python类里面的 self
所以这个reverseMessage 函数想去反转 data里面的变量,那就只能是通过this.变量 的方式了。
就成了这个样子:
把字符串通过.split的方式变成列表在.reverse进行列表反转再通过.join的方法变成新的字符串,最终形成反转字符串效果。
然后我们点击按钮,就会触发这个函数,改变data里的变量值,连带着p标签的内容也跟着变了。