J'utilise Vue.js et je veux changer une propriété de classe CSS. Le code HTML qui utilise la classe est le suivant:
<div class="fillTimerBar"></div>
Et le code CSS:
.fillTimerBar { width: 100%; height: 8px; }
De là, je veux changer la propriété de classe width
en utilisant une propriété computed
du composant Vue.
Quelle serait la bonne façon, le cas échéant?
Vous devez utiliser v-bind:style
directive.
var vm = new Vue({
el: '#example',
data: {
width:'200px'
},
computed: {
computedWidth: function () {
return this.width;
}
},
methods: {
changeWidth: function (event) {
this.width='100px';
}
}
})
#myDiv{
background-color:red;
height:200px;
}
<script src="https://unpkg.com/[email protected]/dist/vue.js"></script>
<div id="example">
<div id="myDiv" v-bind:style="{ width: computedWidth }"></div>
<button v-on:click="changeWidth()">Change</button>
</div>