v-bind 指令主要用于绑定属性,比方你的 class 属性,style 属性,value 属性,href 属性等等,以及自定义属性。只要是属性,就可以用 v-bind 指令进行绑定。Vue 官方为 v-bind 提供了一个简写方式 :bind,例如:
<!-- 完整语法 --> <a v-bind:href="url"></a> <!-- 缩写 --> <a :href="url"></a>
v-bind 的常见示例:
<!-- 绑定 src 属性,imageSrc 已在 vue 中定义 --> <img v-bind:src="imageSrc"></img> <!-- 上面 img 的缩写 --> <img :src="imageSrc"></img> <!-- 内联字符串拼接 --> <img :src="'/path/to/images/' + fileName"> <!-- class 绑定 --> <!-- 如果 isRed 为 true,则在当前元素上面应用 red class --> <div :class="{ red: isRed }"></div> <div :class="[classA, classB]"></div> <!-- isB 和 isC 是一个 boolean 变量,如果为 true,则应用它前面的样式,即 classB、classC --> <div :class="[classA, { classB: isB, classC: isC }]"> <!-- style 绑定 --> <div :style="{ fontSize: size + 'px' }"></div> <div :style="[styleObjectA, styleObjectB]"></div> <!-- 绑定一个有属性的对象 --> <div v-bind="{ id: someProp, 'other-attr': otherProp }"></div> <!-- 通过 prop 修饰符绑定 DOM 属性 --> <div v-bind:text-content.prop="text"></div> <!-- prop 绑定。“prop”必须在 my-component 中声明。用于向子组件传递数据 --> <my-component :prop="someThing"></my-component> <!-- 通过 $props 将父组件的 props 一起传给子组件 --> <child-component v-bind="$props"></child-component> <!-- XLink --> <svg><a :xlink:special="foo"></a></svg>