Vue
by adelura
HTML
<div id="app">
<h2>Todos:</h2>
<ol>
<li v-for="todo in todos">
<label>
<input type="checkbox"
v-on:change="toggle(todo)"
v-bind:checked="todo.done">
<span>
{{ todo.text }}
</span>
</label>
<label v-for="type in types">
<input
type="radio"
@change="toggle(todo, type)"
/>
{{ type }}
</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: {
types: {
important: 'important',
minor: 'minor'
},
todos: [
{ text: "Learn JavaScript", id: 1 },
{ text: "Learn Vue", id: 2 }
]
},
methods: {
toggle(todo, type) {
alert(`${todo.id} | ${type}`);
}
}
})