5.事件处理-注册事件.html 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge" />
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  7. <title>Document</title>
  8. <script src="../../vue.js"></script>
  9. </head>
  10. <body>
  11. <div id="app">
  12. <!-- 在Vue中,有一个指令 v-on 用来注册事件 -->
  13. <!-- v-on:eventType="js表达式" -->
  14. <!-- v-on的缩写为 “@” -->
  15. <!-- 下面事件处理程序 仅适合简单处理逻辑 -->
  16. <button v-on:click="count++">点击了 {{ count }} 次</button>
  17. <!-- 下面事件处理程序 适合 大多数情况,但是不能自主的向事件处理方法中传入参数,只能接收事件对象 为参数。 -->
  18. <button v-on:click="handleButtonClick">点击了 {{ count }} 次</button>
  19. <!-- 下面这种,可以自由的传入任何参数。 -->
  20. <button @click="sayHi('你好')">打招呼</button>
  21. </div>
  22. <script>
  23. new Vue({
  24. data: {
  25. count: 0, // 计数:记录点击按钮的次数
  26. },
  27. // Vue实例方法 的 作用: 1 用于 事件的处理程序,因为 this 会绑定为 Vue实例 2 封装 复用的逻辑
  28. methods: {
  29. handleButtonClick() {
  30. this.count++;
  31. },
  32. sayHi(text) {
  33. alert(text);
  34. },
  35. },
  36. }).$mount('#app');
  37. </script>
  38. </body>
  39. </html>