Vue
by Roberto Torres
HTML
<div id="app">
<h2>Quehaceres:</h2>
<ol>
<li v-for="quehacer in listado">
<label>
<input type="checkbox"
v-on:change="toggle(quehacer)"
v-bind:checked="quehacer.finalizado">
<del v-if="quehacer.finalizado">
{{ quehacer.texto }}
</del>
<span v-else>
{{ quehacer.texto }}
</span>
</label>
</li>
</ol>
</div>
CSS
body {
background: #20262E;
padding: 20px;
font-family: Helvetica;
}
#app {
background: #fff;
border-radius: 4px;
padding: 20px;
transition: all 0.2s;
}
li {
margin: 8px 0;
}
h2 {
font-weight: bold;
margin-bottom: 15px;
}
del {
color: rgba(0, 0, 0, 0.3);
}
Vue
new Vue({
el: "#app",
data: {
listado: [
{ texto: "Levantarme", finalizado: true },
{ texto: "Tomar café", finalizado: true },
{ texto: "Hacer caca", finalizado: false },
{ texto: "Ser grandioso", finalizado: false }
]
},
methods: {
toggle: function(quehacer){
quehacer.finalizado = !quehacer.finalizado
}
}
})