|
2 | 2 |
|
3 | 3 | ## v-text
|
4 | 4 |
|
5 |
| -- **预期:**`string` |
| 5 | +- **预期**:`string` |
6 | 6 |
|
7 |
| -- **详细:** |
| 7 | +- **详细**: |
8 | 8 |
|
9 |
| - 更新元素的 [textContent](https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent)。如果要更新部分的 `textContent`,需要使用 `{{ Mustache }}` 插值。 |
| 9 | + 更新元素的 [textContent](https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent)。如果要更新部分的 `textContent`,需要使用 [Mustache 插值](/guide/template-syntax.html#文本)。 |
10 | 10 |
|
11 |
| -- **示例:** |
| 11 | +- **示例**: |
12 | 12 |
|
13 | 13 | ```html
|
14 | 14 | <span v-text="msg"></span>
|
15 |
| - <!-- same as --> |
| 15 | + <!-- 等价于 --> |
16 | 16 | <span>{{msg}}</span>
|
17 | 17 | ```
|
18 | 18 |
|
19 |
| -- **参考:** [数据绑定语法 - 插值](../guide/template-syntax.html#text) |
| 19 | +- **参考**:[数据绑定语法 - 插值](/guide/template-syntax.html#文本) |
20 | 20 |
|
21 | 21 | ## v-html
|
22 | 22 |
|
23 |
| -- **预期:**`string` |
| 23 | +- **预期**:`string` |
24 | 24 |
|
25 |
| -- **详细:** |
| 25 | +- **详细**: |
26 | 26 |
|
27 | 27 | 更新元素的 [innerHTML](https://developer.mozilla.org/en-US/docs/Web/API/Element/innerHTML)。**注意:内容按普通 HTML 插入 - 不会作为 Vue 模板进行编译**。如果试图使用 `v-html` 组合模板,可以重新考虑是否通过使用组件来替代。
|
28 | 28 |
|
29 | 29 | :::warning
|
30 | 30 | 在网站上动态渲染任意 HTML 是非常危险的,因为容易导致 [XSS 攻击](https://en.wikipedia.org/wiki/Cross-site_scripting)。只在可信内容上使用 `v-html`,**永不**用在用户提交的内容上。
|
31 | 31 | :::
|
32 | 32 |
|
33 |
| - 在[单文件组件] (../guide/single-file-component.html 里,`scoped` 的样式不会应用在 `v-html` 内部,因为那部分 HTML 没有被 Vue 的模板编译器处理。如果你希望针对 `v-html` 的内容设置带作用域的 CSS,你可以替换为 [CSS modules](https://vue-loader.vuejs.org/en/features/css-modules.html) 或用一个额外的全局 `<style>` 元素手动设置类似 BEM 的作用域策略。 |
| 33 | + 在[单文件组件](../guide/single-file-component.html)里,`scoped` 的样式不会应用在 `v-html` 内部,因为那部分 HTML 没有被 Vue 的模板编译器处理。如果你希望针对 `v-html` 的内容设置带作用域的 CSS,你可以替换为 [CSS modules](https://vue-loader.vuejs.org/en/features/css-modules.html) 或用一个额外的全局 `<style>` 元素手动设置类似 BEM 的作用域策略。 |
34 | 34 |
|
35 |
| -- **示例:** |
| 35 | +- **示例**: |
36 | 36 |
|
37 | 37 | ```html
|
38 | 38 | <div v-html="html"></div>
|
39 | 39 | ```
|
40 | 40 |
|
41 |
| -- **参考:** [数据绑定语法 - 插值](../guide/template-syntax.html#raw-html) |
| 41 | +- **参考**:[数据绑定语法 - 插值](/guide/template-syntax.html#原始-html) |
42 | 42 |
|
43 | 43 | ## v-show
|
44 | 44 |
|
45 |
| -- **预期:**`any` |
| 45 | +- **预期**:`any` |
46 | 46 |
|
47 |
| -- **用法:** |
| 47 | +- **用法**: |
48 | 48 |
|
49 |
| - 根据表达式之真假值,切换元素的 `display` CSS property。 |
| 49 | + 根据表达式的真假值,切换元素的 `display` CSS property。 |
50 | 50 |
|
51 | 51 | 当条件变化时该指令触发过渡效果。
|
52 | 52 |
|
53 |
| -- **参考:** [条件渲染 - v-show](../guide/conditional.html#v-show) |
| 53 | +- **参考**:[条件渲染 - v-show](../guide/conditional.html#v-show) |
54 | 54 |
|
55 | 55 | ## v-if
|
56 | 56 |
|
57 |
| -- **预期:**`any` |
| 57 | +- **预期**:`any` |
58 | 58 |
|
59 |
| -- **用法:** |
| 59 | +- **用法**: |
60 | 60 |
|
61 |
| - 根据表达式的值的 truthy-ness 来有条件地渲染元素。在切换时元素及它的数据绑定 / 组件被销毁并重建。如果元素是 `<template>`,将提取它的内容作为条件块。 |
| 61 | + 根据表达式的真假值来有条件地渲染元素。在切换时元素及它的数据绑定 / 组件被销毁并重建。如果元素是 `<template>`,将提取它的内容作为条件块。 |
62 | 62 |
|
63 | 63 | 当条件变化时该指令触发过渡效果。
|
64 | 64 |
|
65 |
| - 当和 `v-if` 一起使用时,`v-for` 的优先级比 `v-if` 更高。详见[列表渲染教程](../guide/list.html#v-for-with-v-if) |
| 65 | + 当和 `v-if` 一起使用时,`v-for` 的优先级比 `v-if` 更高。详见[列表渲染教程](/guide/list.html#v-for-与-v-if-一同使用) |
66 | 66 |
|
67 |
| -- **参考:** [条件渲染 - v-if](../guide/conditional.html#v-if) |
| 67 | +- **参考**:[条件渲染 - v-if](../guide/conditional.html#v-if) |
68 | 68 |
|
69 | 69 | ## v-else
|
70 | 70 |
|
71 | 71 | - **不需要表达式**
|
72 | 72 |
|
73 |
| -- **限制:**前一兄弟元素必须有 `v-if` 或 `v-else-if`。 |
| 73 | +- **限制**:前一兄弟元素必须有 `v-if` 或 `v-else-if`。 |
74 | 74 |
|
75 |
| -- **用法:** |
| 75 | +- **用法**: |
76 | 76 |
|
77 | 77 | 为 `v-if` 或者 `v-else-if` 添加“else 块”。
|
78 | 78 |
|
|
85 | 85 | </div>
|
86 | 86 | ```
|
87 | 87 |
|
88 |
| -- **参考:** [条件渲染 - v-else](../guide/conditional.html#v-else) |
| 88 | +- **参考**:[条件渲染 - v-else](../guide/conditional.html#v-else) |
89 | 89 |
|
90 | 90 | ## v-else-if
|
91 | 91 |
|
92 |
| -- **预期:**`any` |
| 92 | +- **预期**:`any` |
93 | 93 |
|
94 |
| -- **限制:**前一兄弟元素必须有 `v-if` 或 `v-else-if`。 |
| 94 | +- **限制**:前一兄弟元素必须有 `v-if` 或 `v-else-if`。 |
95 | 95 |
|
96 |
| -- **用法:** |
| 96 | +- **用法**: |
97 | 97 |
|
98 | 98 | 表示 `v-if` 的“else if 块”。可以链式调用。
|
99 | 99 |
|
|
112 | 112 | </div>
|
113 | 113 | ```
|
114 | 114 |
|
115 |
| -- **参考:** [条件渲染- v-else-if](../guide/conditional.html#v-else-if) |
| 115 | +- **参考**:[条件渲染- v-else-if](../guide/conditional.html#v-else-if) |
116 | 116 |
|
117 | 117 | ## v-for
|
118 | 118 |
|
119 |
| -- **预期:**`Array | Object | number | string | Iterable` |
| 119 | +- **预期**:`Array | Object | number | string | Iterable` |
120 | 120 |
|
121 |
| -- **用法:** |
| 121 | +- **用法**: |
122 | 122 |
|
123 | 123 | 基于源数据多次渲染元素或模板块。此指令之值,必须使用特定语法 `alias in expression`,为当前遍历的元素提供别名:
|
124 | 124 |
|
|
148 | 148 |
|
149 | 149 | `v-for` 的详细用法可以通过以下链接查看教程详细说明。
|
150 | 150 |
|
151 |
| -- **参考:** |
| 151 | +- **参考**: |
152 | 152 | - [列表渲染](../guide/list.html)
|
153 | 153 |
|
154 | 154 | ## v-on
|
155 | 155 |
|
156 |
| -- **缩写:**`@` |
| 156 | +- **缩写**:`@` |
157 | 157 |
|
158 |
| -- **预期:**`Function | Inline Statement | Object` |
| 158 | +- **预期**:`Function | Inline Statement | Object` |
159 | 159 |
|
160 |
| -- **参数:**`event` |
| 160 | +- **参数**:`event` |
161 | 161 |
|
162 |
| -- **修饰符:** |
| 162 | +- **修饰符**: |
163 | 163 |
|
164 | 164 | - `.stop` - 调用 `event.stopPropagation()`。
|
165 | 165 | - `.prevent` - 调用 `event.preventDefault()`。
|
166 |
| - - `.capture` - - 添加事件侦听器时使用 capture 模式。 |
| 166 | + - `.capture` - 添加事件侦听器时使用 capture 模式。 |
167 | 167 | - `.self` - 只当事件是从侦听器绑定的元素本身触发时才触发回调。
|
168 | 168 | - `.{keyAlias}` - 仅当事件是从特定键触发时才触发回调。
|
169 | 169 | - `.once` - 只触发一次回调。
|
|
172 | 172 | - `.middle` - 只当点击鼠标中键时触发。
|
173 | 173 | - `.passive` - `{ passive: true }` 模式添加侦听器
|
174 | 174 |
|
175 |
| -- **用法:** |
| 175 | +- **用法**: |
176 | 176 |
|
177 | 177 | 绑定事件监听器。事件类型由参数指定。表达式可以是一个方法的名字或一个内联语句,如果没有修饰符也可以省略。
|
178 | 178 |
|
|
182 | 182 |
|
183 | 183 | `v-on` 同样支持不带参数绑定一个事件/监听器键值对的对象。注意当使用对象语法时,是不支持任何修饰器的。
|
184 | 184 |
|
185 |
| -- **示例:** |
| 185 | +- **示例**: |
186 | 186 |
|
187 | 187 | ```html
|
188 | 188 | <!-- 方法处理器 -->
|
|
231 | 231 | <my-component @my-event="handleThis(123, $event)"></my-component>
|
232 | 232 | ```
|
233 | 233 |
|
234 |
| -- **参考:** |
235 |
| - - [事件处理器]](../guide/events.html) |
236 |
| - - [组件 - 自定义事件](../guide/component-basics.html#listening-to-child-components-events) |
| 234 | +- **参考**: |
| 235 | + - [事件处理器](../guide/events.html) |
| 236 | + - [组件 - 自定义事件](../guide/component-basics.html#监听子组件事件) |
237 | 237 |
|
238 | 238 | ## v-bind
|
239 | 239 |
|
240 |
| -- **缩写:**`:` |
| 240 | +- **缩写**:`:` |
241 | 241 |
|
242 |
| -- **预期:**`any (with argument) | Object (without argument)` |
| 242 | +- **预期**:`any (with argument) | Object (without argument)` |
243 | 243 |
|
244 |
| -- **参数:**`attrOrProp (optional)` |
| 244 | +- **参数**:`attrOrProp (optional)` |
245 | 245 |
|
246 |
| -- **修饰符:** |
| 246 | +- **修饰符**: |
247 | 247 |
|
248 | 248 | - `.camel` - 将 kebab-case attribute 名转换为 camelCase。
|
249 | 249 |
|
250 |
| -- **用法:** |
| 250 | +- **用法**: |
251 | 251 |
|
252 | 252 | 动态地绑定一个或多个 attribute,或一个组件 prop 到表达式。
|
253 | 253 |
|
|
257 | 257 |
|
258 | 258 | 没有参数时,可以绑定到一个包含键值对的对象。注意此时 `class` 和 `style` 绑定不支持数组和对象。
|
259 | 259 |
|
260 |
| -- **示例:** |
| 260 | +- **示例**: |
261 | 261 |
|
262 | 262 | ```html
|
263 | 263 | <!-- 绑定 attribute -->
|
|
305 | 305 |
|
306 | 306 | 在使用字符串模板或通过 `vue-loader` / `vueify` 编译时,无需使用 `.camel`。
|
307 | 307 |
|
308 |
| -- **参考:** |
| 308 | +- **参考**: |
309 | 309 | - [Class 和 Style 绑定](../guide/class-and-style.html)
|
310 |
| - - [组件 - Props](../guide/component-basics.html#passing-data-to-child-components-with-props) |
| 310 | + - [组件 - Props](../guide/component-basics.html#通过-prop-向子组件传递数据) |
311 | 311 |
|
312 | 312 | ## v-model
|
313 | 313 |
|
314 |
| -- **预期:**随表单控件类型不同而不同。 |
| 314 | +- **预期**:随表单控件类型不同而不同。 |
315 | 315 |
|
316 |
| -- **限制于:** |
| 316 | +- **限制于**: |
317 | 317 |
|
318 | 318 | - `<input>`
|
319 | 319 | - `<select>`
|
320 | 320 | - `<textarea>`
|
321 | 321 | - components
|
322 | 322 |
|
323 |
| -- **修饰符:** |
| 323 | +- **修饰符**: |
324 | 324 |
|
325 |
| - - [`.lazy`](../guide/forms.html#lazy) - 取代 `input` 监听 `change` 事件 |
| 325 | + - [`.lazy`](../guide/forms.html#lazy) - 监听 `change` 而不是 `input` 事件 |
326 | 326 | - [`.number`](../guide/forms.html#number) - 输入字符串转为有效的数字
|
327 | 327 | - [`.trim`](../guide/forms.html#trim) - 输入首尾空格过滤
|
328 | 328 |
|
329 |
| -- **用法:** |
| 329 | +- **用法**: |
330 | 330 |
|
331 | 331 | 在表单控件或者组件上创建双向绑定。细节请看下面的教程链接。
|
332 | 332 |
|
333 |
| -- **参考:** |
| 333 | +- **参考**: |
334 | 334 | - [表单控件绑定](../guide/forms.html)
|
335 |
| - - [组件 - 在输入组件上使用自定义事件](../guide/component-custom-events.html#v-model-arguments) |
| 335 | + - [组件 - 在输入组件上使用自定义事件](../guide/component-custom-events.html#v-model-参数) |
336 | 336 |
|
337 | 337 | ## v-slot
|
338 | 338 |
|
339 |
| -- **缩写:**`#` |
| 339 | +- **缩写**:`#` |
340 | 340 |
|
341 |
| -- **预期:**可放置在函数参数位置的 JavaScript 表达式 (在[支持的环境](../guide/component-slots.html#destructuring-slot-props)下可使用解构)。可选,即只需要在为插槽传入 prop 的时候使用。 |
| 341 | +- **预期**:可放置在函数参数位置的 JavaScript 表达式 (在[支持的环境](../guide/component-slots.html#解构插槽-prop)下可使用解构)。可选,即只需要在为插槽传入 prop 的时候使用。 |
342 | 342 |
|
343 |
| -- **参数:**插槽名 (可选,默认值是 `default`) |
| 343 | +- **参数**:插槽名 (可选,默认值是 `default`) |
344 | 344 |
|
345 |
| -- **限用于:** |
| 345 | +- **限用于**: |
346 | 346 |
|
347 | 347 | - `<template>`
|
348 |
| - - [组件](../guide/component-slots.html#abbreviated-syntax-for-lone-default-slots) (对于一个单独的带 prop 的默认插槽) |
| 348 | + - [组件](../guide/component-slots.html#独占默认插槽的缩写语法) (对于一个单独的带 prop 的默认插槽) |
349 | 349 |
|
350 |
| -- **用法:** |
| 350 | +- **用法**: |
351 | 351 |
|
352 | 352 | 提供具名插槽或需要接收 prop 的插槽。
|
353 | 353 |
|
354 |
| -- **示例:** |
| 354 | +- **示例**: |
355 | 355 |
|
356 | 356 | ```html
|
357 | 357 | <!-- 具名插槽 -->
|
|
386 | 386 |
|
387 | 387 | 更多细节请查阅以下链接。
|
388 | 388 |
|
389 |
| -- **参考:** |
| 389 | +- **参考**: |
390 | 390 | - [组件 - 插槽](../guide/component-slots.html)
|
391 | 391 |
|
392 | 392 | ## v-pre
|
393 | 393 |
|
394 | 394 | - **不需要表达式**
|
395 | 395 |
|
396 |
| -- **用法:** |
| 396 | +- **用法**: |
397 | 397 |
|
398 | 398 | 跳过这个元素和它的子元素的编译过程。可以用来显示原始 Mustache 标签。跳过大量没有指令的节点会加快编译。
|
399 | 399 |
|
400 |
| -- **示例:** |
| 400 | +- **示例**: |
401 | 401 |
|
402 | 402 | ```html
|
403 | 403 | <span v-pre>{{ this will not be compiled }}</span>
|
|
407 | 407 |
|
408 | 408 | - **不需要表达式**
|
409 | 409 |
|
410 |
| -- **用法:** |
| 410 | +- **用法**: |
411 | 411 |
|
412 | 412 | 这个指令保持在元素上直到关联组件实例结束编译。和 CSS 规则如 `[v-cloak] { display: none }` 一起用时,这个指令可以隐藏未编译的 Mustache 标签直到组件实例准备完毕。
|
413 | 413 |
|
414 |
| -- **示例:** |
| 414 | +- **示例**: |
415 | 415 |
|
416 | 416 | ```css
|
417 | 417 | [v-cloak] {
|
|
431 | 431 |
|
432 | 432 | - **不需要表达式**
|
433 | 433 |
|
434 |
| -- **详细:** |
| 434 | +- **详细**: |
435 | 435 |
|
436 | 436 | 只渲染元素和组件**一次**。随后的重新渲染,元素/组件及其所有的子节点将被视为静态内容并跳过。这可以用于优化更新性能。
|
437 | 437 |
|
|
451 | 451 | </ul>
|
452 | 452 | ```
|
453 | 453 |
|
454 |
| -- **参考:** |
455 |
| - - [数据绑定语法- 插值](../guide/template-syntax.html#text) |
| 454 | +- **参考**: |
| 455 | + - [数据绑定语法- 插值](../guide/template-syntax.html#文本) |
456 | 456 |
|
457 | 457 | ## v-is
|
458 | 458 |
|
459 | 459 | > 注意:本节仅影响直接在页面的 HTML 中写入 Vue 模板的情况。
|
460 | 460 |
|
461 |
| -- **预期:**字符串文本 |
| 461 | +- **预期**:字符串文本 |
462 | 462 |
|
463 |
| -- **限制于:**原生 HTML 元素 |
| 463 | +- **限制于**:原生 HTML 元素 |
464 | 464 |
|
465 |
| -- **用法:**在 DOM 内模板使用时,模板受原生 HTML 解析规则的约束。某些 HTML 元素,如:`<ul>`、`<ol>`、`<table>` 和 `<select>` 等,对哪些元素可以出现在它们内部有限制,而某些元素 (如:`<li>`、`<tr>` 和 `<option>` 只能出现在某些其他元素中。作为解决方法,我们可以对以下元素使用 `v-is` 指令: |
| 465 | +- **用法**:在 DOM 内模板使用时,模板受原生 HTML 解析规则的约束。某些 HTML 元素,如:`<ul>`、`<ol>`、`<table>` 和 `<select>` 等,对哪些元素可以出现在它们内部有限制,而某些元素 (如:`<li>`、`<tr>` 和 `<option>` 只能出现在某些其他元素中。作为解决方法,我们可以对以下元素使用 `v-is` 指令: |
466 | 466 |
|
467 | 467 | ```html
|
468 | 468 | <table>
|
|
0 commit comments