• 510 v-on:基础,参数,修饰符


    <!DOCTYPE html>
    <html lang="en">
    
    <head>
      <meta charset="UTF-8">
      <title>Title</title>
    </head>
    
    <body>
    
      <div id="app">
        <h2>{{counter}}</h2>
        <!--<h2 v-bind:title></h2>-->
        <!--<h2 :title></h2>-->
        <!--<button v-on:click="counter++">+</button>-->
        <!--<button v-on:click="counter&#45;&#45;">-</button>-->
        <!--<button v-on:click="increment">+</button>-->
        <!--<button v-on:click="decrement">-</button>-->
        <button @click="increment">+</button>
        <button @click="decrement">-</button>
      </div>
    
      <script src="../js/vue.js"></script>
      <script>
        const app = new Vue({
          el: '#app',
          data: {
            counter: 0
          },
          methods: {
            increment() {
              this.counter++
            },
            decrement() {
              this.counter--
            }
          }
        })
      </script>
    
    </body>
    
    </html>
    

    v-on参数

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
      <meta charset="UTF-8">
      <title>Title</title>
    </head>
    
    <body>
    
      <div id="app">
        <!--1.事件调用的方法没有参数-->
        <button @click="btn1Click()">按钮1</button>
        <button @click="btn1Click">按钮1</button>
    
        <!--2.在事件定义时, 写方法时省略了小括号, 但是方法本身是需要一个参数的, 这个时候, Vue会默认将浏览器生产的event事件对象作为参数传入到方法-->
        <!--<button @click="btn2Click(123)">按钮2</button>-->
        <!--<button @click="btn2Click()">按钮2</button>-->
        <button @click="btn2Click">按钮2</button>
    
        <!--3.方法定义时, 我们需要event对象, 同时又需要其他参数-->
        <!-- 在调用方式, 如何手动的获取到浏览器参数的event对象: $event-->
        <button @click="btn3Click(abc, $event)">按钮3</button>
      </div>
    
      <script src="../js/vue.js"></script>
      <script>
        const app = new Vue({
          el: '#app',
          data: {
            message: '你好啊',
            abc: 123
          },
          methods: {
            btn1Click() {
              console.log("btn1Click"); // btn1Click
            },
            // 和原生js一样,调用函数时,不传实参,则第一个形参是事件对象;传了实参,值就是实参
            btn2Click(event) {
              console.log('--------', event);
            },
            btn3Click(abc, event) {
              console.log('++++++++', abc, event); // 123  事件对象
            }
          }
        })
    
      // 如果函数需要参数,但是没有传入, 那么函数的形参为undefined
      // function abc(name) {
      //   console.log(name);
      // }
      //
      // abc()
      </script>
    
    </body>
    
    </html>
    

    v-on修饰符

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title>Title</title>
    </head>
    <body>
    
    <div id="app">
      <!--1. .stop修饰符的使用-->
      <div @click="divClick">
        aaaaaaa
        <button @click.stop="btnClick">按钮</button>
      </div>
    
      <!--2. .prevent修饰符的使用-->
      <br>
      <form action="baidu">
        <input type="submit" value="提交" @click.prevent="submitClick">
      </form>
    
      <!--3. .监听某个键盘的键帽 【常用于输入框】-->
      <input type="text" @keyup.enter="keyUp">
    
      <!--4. .once修饰符的使用-->
      <button @click.once="btn2Click">按钮2</button>
    </div>
    
    <script src="../js/vue.js"></script>
    <script>
      const app = new Vue({
        el: '#app',
        data: {
          message: '你好啊'
        },
        methods: {
          btnClick() {
            console.log("btnClick");
          },
          divClick() {
            console.log("divClick");
          },
          submitClick() {
            console.log('submitClick');
          },
          keyUp() {
            console.log('keyUp');
          },
          btn2Click() {
            console.log('btn2Click');
          }
        }
      })
    </script>
    
    </body>
    </html>
    

  • 相关阅读:
    51nod 1138 【数学-等差数列】
    hdoj3665【简单DFS】
    hdoj3664【DP】
    51nod1270 【dp】
    51nod 1069【思维】
    关于一些数学符号和概率的阐述;
    51nod 1428【贪心】
    51nod 1133【贪心】
    51nod1127【尺取】
    51nod1126【矩阵快速幂】
  • 原文地址:https://www.cnblogs.com/jianjie/p/13527224.html
Copyright © 2020-2023  润新知