Vue 模板语法中我们可以通过 v-bind
绑定属性,例如 v-bind:msg="variable"
variable
代表定义Vue实例 data 中定义的属性(property)msg
则是写死的属性
但实际在某些情况下,我们希望 msg 也是可以动态改变的,也就是所谓的 动态参数,如下:
<a v-bind:[attributeName]="url"> ... </a>
这里的 attributeName
会被作为一个 JavaScript 表达式进行动态求值,求得的值将会作为最终的参数来使用。例如,如果你的组件实例有一个 data property attributeName
,其值为 "href"
,那么这个绑定将等价于 v-bind:href
。
同样地,你可以使用动态参数为一个动态的事件名绑定处理函数:
<a v-on:[eventName]="doSomething"> ... </a>
在这个示例中,当 eventName
的值为 "focus"
时,v-on:[eventName]
将等价于 v-on:focus
参考:vue3官方文档