vue学习--模板语法(三、事件绑定)

2020-04-05  本文已影响0人  若能遇见

3.4 事件绑定

1.Vue如何处理事件?

<input type = 'button' v-on:click = 'num++'/>
<input type = 'button' @click = 'num++'/>

2.事件函数的调用方式

<button v-on:click='say'>Hello</button>
<button v-on:click='say()'>Say hi</button>

3.事件函数参数传递

<button v-on:click='say("hi",$event)'>Say hi</button>

如果事件直接绑定函数名称,那么默认会传递事件对象作为事件函数的第一个参数。

如果事件绑定函数调用,那么事件对象必须作为最后一个参数传递,并且事件对象的名称必须是$event。

4.事件修饰符

<a v-on:click.stop="handle">跳转</a>
<a v-on:click.prevent="handle">跳转</a>

5.按键修饰符

<input v-on:keyup.enter='submit'>
<input v-on:keyup.delete ='handle'>

6.自定义按键修饰符

Vue.config.keyCodes.f1 = 112

案例:简单计算器

①通过v-model指令实现数值a和数据b的绑定

②给计算按钮绑定事件,实现计算逻辑

③将计算结果绑定到对应位置

 <div id="app">
        <h1>简单计算器</h1>
        <div>
            <span>数值A:</span>
            <span><input type="text" v-model="a"></span>
        </div>
        <div>
            <span>数值B:</span>
            <span><input type="text" v-model="b"></span>
        </div>
        <div>
            <button v-on:click='handle'>计算</button>
        </div>
        <div>
            <span>计算结果:</span>
            <span v-text='result'></span>
        </div>
    </div>
    <script>
        var vm = new Vue({
            el: '#app',
            data: {
                a: '',
                b: '',
                result: ''
            },
            methods: {
                handle: function () {
                    this.result = parseInt(this.a) + parseInt(this.b);
                }
            }
        });
    </script>
上一篇 下一篇

猜你喜欢

热点阅读