Vue.js 何时将触发computed属性VueJS
假设我有一张表格,里面有and。我想实现computed属性,它将监视用户每次从中删除所有内容时,computed属性都应该返回到它的默认状态 代码如下:Vue.js 何时将触发computed属性VueJS,vue.js,Vue.js,假设我有一张表格,里面有and。我想实现computed属性,它将监视用户每次从中删除所有内容时,computed属性都应该返回到它的默认状态 代码如下: <input class="form-control"/> <select v-model="selectModel"> <option>Please select</option> <option>Yes</option> <option>
<input class="form-control"/>
<select v-model="selectModel">
<option>Please select</option>
<option>Yes</option>
<option>No</option>
</select>
<script>
new Vue({
el: '#app',
data() {
return {
selectModel: '';
}
},
computed: {
input_empty: function() {
var inp = getElementByClass('form-control');
if (inp == '') {
selectModel = "Please select";
}
}
}
})
</script>
何时触发此计算属性?我以为每次我在输入字段中键入某个内容,或者删除其中的所有内容时,都会触发它,所以我在计算函数的第一行上放置了一个断点,但它从未被触发。您可以查看输入的值,每当它是空字符串时,您也会重置selectModel: 模板:
<div id="app">
<input class="form-control" v-model="textInput" />
<select v-model="selectModel">
<option value="" disabled>Please select</option>
<option value="Yes">Yes</option>
<option value="No">No</option>
</select>
</div>
您可以查看输入的值,当它是空字符串时,您还可以重置selectModel: 模板:
<div id="app">
<input class="form-control" v-model="textInput" />
<select v-model="selectModel">
<option value="" disabled>Please select</option>
<option value="Yes">Yes</option>
<option value="No">No</option>
</select>
</div>
您还可以使用方法做您需要的事情,并用@change包装您的输入,这样您就可以用代码调用方法 html
您还可以使用方法做您需要的事情,并用@change包装您的输入,这样您就可以用代码调用方法 html
不要为此使用计算机。顾名思义,computed是可以从viewmodel的值计算出来的。@connexo你说得对,实际上,我对这一点很陌生,现在我知道我应该使用watch而不是computed,不要使用computed。顾名思义,computed是可以从viewmodel的值计算出来的。@connexo你说得对,实际上,我对这一点很陌生,现在我知道我应该用watch而不是computed谢谢你的回答,但手表现在更适合我谢谢你的回答,但是现在这块手表更适合我
<div id="app">
<div class="container">
<input class="form-control" v-model="myinput" @change="checkInput">
<select v-model="selectModel">
<option value="Please select" seleceted>Please select</option>
<option value="Yes">Yes</option>
<option value="No">No</option>
</select>
</div>
</div>
var app = new Vue({
el: '#app',
data: () => ({
selectModel: '',
myinput: ''
}),
methods: {
checkInput() {
if (this.myinput === '') {
console.log('here')
this.selectModel = 'Please select'
}
}
}
})