Availability Test
by Travis Smith
HTML
<div id="app">
<select v-model="state">
<option disabled>Choose</option>
<option>California</option>
<option>Texas</option>
</select>
<select v-model="selectedLimit">
<option disabled>Choose</option>
<option v-for="limit in limits">{{ limit }}</option>
</select>
{{ selectedLimit }}
</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: {
state: 'Choose',
selectedLimit: 'Choose'
},
computed: {
limits: function() {
initialLimits = ["10,000", "20,000", "30,000"];
if(this.state === "Texas") {
this.selectedLimit = 'Choose';
return initialLimits.filter(limit => limit != "20,000");
} else {
return initialLimits;
}
}
}
})