6
6
7
7
## 监听事件
8
8
9
- 可以用 ` v-on ` 指令监听 DOM 事件来触发一些JavaScript代码 。
9
+ 可以用 ` v-on ` 指令监听 DOM 事件来触发一些 JavaScript 代码 。
10
10
11
11
示例:
12
12
@@ -42,9 +42,9 @@ var example1 = new Vue({
42
42
</script >
43
43
{% endraw %}
44
44
45
- ## 方法处理器
45
+ ## 方法事件处理器
46
46
47
- 许多事件处理都很复杂,所以直接把JavaScript代码写在 ` v-on ` 属性值里是不可行的。所以 ` v-on ` 可以接受一个你定义的方法名来调用 。
47
+ 许多事件处理的逻辑都很复杂,所以直接把 JavaScript 代码写在 ` v-on ` 指令中是不可行的。因此 ` v-on ` 可以接收一个定义的方法来调用 。
48
48
49
49
示例:
50
50
@@ -64,15 +64,15 @@ var example2 = new Vue({
64
64
// 在 `methods`对象中定义方法
65
65
methods: {
66
66
greet : function (event ) {
67
- // `this` 在方法里指当前Vue实例
67
+ // `this` 在方法里指当前 Vue 实例
68
68
alert (' Hello ' + this .name + ' !' )
69
- // `event` 是原生DOM事件
69
+ // `event` 是原生 DOM 事件
70
70
alert (event .target .tagName )
71
71
}
72
72
}
73
73
})
74
74
75
- // 也可以在JavaScript代码里调用方法
75
+ // 也可以用 JavaScript 直接调用方法
76
76
example2 .greet () // -> 'Hello Vue.js!'
77
77
```
78
78
@@ -98,7 +98,7 @@ var example2 = new Vue({
98
98
</script >
99
99
{% endraw %}
100
100
101
- ## 内联语句处理器
101
+ ## 内联处理器方法
102
102
103
103
除了直接绑定到一个方法,也可以用内联 JavaScript 语句:
104
104
@@ -160,7 +160,7 @@ methods: {
160
160
161
161
在事件处理器中经常需要调用 ` event.preventDefault() ` 或 ` event.stopPropagation() ` 。尽管我们在方法内可以轻松做到,不过让方法是纯粹的数据逻辑而不处理 DOM 事件细节会更好。
162
162
163
- 为了解决这个问题,Vue.js 为 ` v-on ` 提供了 ** 事件修饰符** 。通过点号打头的指令后缀调用修饰符 。
163
+ 为了解决这个问题,Vue.js 为 ` v-on ` 提供了 ** 事件修饰符** 。通过点号打头的指令后缀来调用修饰符 。
164
164
165
165
- ` .stop `
166
166
- ` .prevent `
@@ -189,14 +189,14 @@ methods: {
189
189
190
190
## 按键修饰符
191
191
192
- 在监听键盘事件时,我们经常需要检测 keyCode 。Vue.js 允许为 ` v-on ` 添加按键修饰符 :
192
+ 在监听键盘事件时,我们经常需要监测常见的键值 。Vue 允许为 ` v-on ` 在监听键盘事件时添加按键修饰符 :
193
193
194
194
``` html
195
195
<!-- 只有在 keyCode 是 13 时调用 vm.submit() -->
196
196
<input v-on:keyup.13 =" submit" >
197
197
```
198
198
199
- 记住所有的 keyCode 比较困难,Vue.js 为最常用的按键提供别名 :
199
+ 记住所有的 keyCode 比较困难,所以 Vue 为最常用的按键提供了别名 :
200
200
201
201
``` html
202
202
<!-- 同上 -->
@@ -210,22 +210,21 @@ methods: {
210
210
211
211
- enter
212
212
- tab
213
- - delete (captures both "Delete" and "Backspace" keys )
213
+ - delete (捕获 “删除” 和 “退格” 键 )
214
214
- esc
215
215
- space
216
216
- up
217
217
- down
218
218
- left
219
219
- right
220
220
221
-
222
- 支持单字母按键别名。
221
+ 同样支持单字母按键别名。
223
222
224
223
``` html
225
224
<input v-on:keyup.v =" say('That is the first letter in Vue')" >
226
225
```
227
226
228
- 在必要时,甚至可以自定义修饰符别名 :
227
+ 在必要时,甚至可以自定义按键别名 :
229
228
230
229
``` js
231
230
// 可以使用 @keyup.f1
@@ -234,7 +233,7 @@ Vue.config.keyCodes.f1 = 112
234
233
235
234
## 为什么在 HTML 中监听事件?
236
235
237
- 你可能注意到这种事件监听的方式违背了传统理念 “separation of concern”。不必担心,因为所有的 Vue.js 事件处理方法和表达式都严格绑定在当前视图的 ViewModel 上,它不会导致任何维护困难 。实际上,使用 ` v-on ` 有几个好处:
236
+ 你可能注意到这种事件监听的方式违背了传统理念 “separation of concern”。不必担心,因为所有的 Vue.js 事件处理方法和表达式都严格绑定在当前视图的 ViewModel 上,它不会导致任何维护上的困难 。实际上,使用 ` v-on ` 有几个好处:
238
237
239
238
1 . 扫一眼 HTML 模板便能轻松定位在 JavaScript 代码里对应的方法。
240
239
0 commit comments