在循环中制作动态背景颜色
Making dynamic background colors in loop
我有一个迭代 color_attributes
:
<div v-for="colorAttribute of selectedProduct.color_attributes" :key="selectedProduct.id">
<span class="color-attribute" style="background: #{{colorAttribute}}"></span>
</div>
如何动态更改 span
背景颜色?
您可以将样式绑定到对象:
<div v-for="colorAttribute of selectedProduct.color_attributes" :key="selectedProduct.id">
<span class="color-attribute" :style="{background: '#'+colorAttribute}"></span>
</div>
或使用字符串模板:
<span class="color-attribute" :style="`background: #${colorAttribute}`">
您可以使用 template literals 动态绑定颜色 属性 值。
演示 :
new Vue({
el: '#app',
data: {
selectedProduct: {
color_attributes: ['green', 'blue', 'yellow']
}
}
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="app">
<div v-for="(colorAttribute, index) of selectedProduct.color_attributes" :key="index">
<span class="color-attribute" :style="`background: ${colorAttribute}`"> {{ colorAttribute }} </span>
</div>
</div>
我有一个迭代 color_attributes
:
<div v-for="colorAttribute of selectedProduct.color_attributes" :key="selectedProduct.id">
<span class="color-attribute" style="background: #{{colorAttribute}}"></span>
</div>
如何动态更改 span
背景颜色?
您可以将样式绑定到对象:
<div v-for="colorAttribute of selectedProduct.color_attributes" :key="selectedProduct.id">
<span class="color-attribute" :style="{background: '#'+colorAttribute}"></span>
</div>
或使用字符串模板:
<span class="color-attribute" :style="`background: #${colorAttribute}`">
您可以使用 template literals 动态绑定颜色 属性 值。
演示 :
new Vue({
el: '#app',
data: {
selectedProduct: {
color_attributes: ['green', 'blue', 'yellow']
}
}
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="app">
<div v-for="(colorAttribute, index) of selectedProduct.color_attributes" :key="index">
<span class="color-attribute" :style="`background: ${colorAttribute}`"> {{ colorAttribute }} </span>
</div>
</div>