从 2.6.0 开始,可以用方括号括起来的 JavaScript 表达式作为一个指令的参数:
<a v-bind:[attributeName]=“url”> …
这里的 attributeName 会被作为一个 JavaScript 表达式进行动态求值,求得的值将会作为最终的参数来使用。例如,如果你的 Vue 实例有一个 data property attributeName,其值为 “href”,那么这个绑定将等价于 v-bind:href。
同样地,你可以使用动态参数为一个动态的事件名绑定处理函数:
<a v-on:[eventName]=“doSomething”> …
在这个示例中,当 eventName 的值为 “focus” 时,v-on:[eventName] 将等价于 v-on:focus。
举例:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>动态参数</title> <script src="vue.js"></script> </head> <body> <div id='app7'> <span v-on:[event_name]='dosomething'>{{msg}}</span> </div> </body> <script> var vm = new Vue({ el:"#app7", data:{ msg:100, event_name:'click' }, methods:{ dosomething:function(){ this.msg = this.msg + 1 } } }) </script> </html>