侦听子组件vue.js中的选择选项更改
尝试从子组件更改父组件的选择选项值。这里是结构 母公司 我想听听date道具,里面的dateUpdate试图使用watch:仍然无法控制台。记录更改。。。我错过了什么 您应该注意的是dateUpdate computed属性的值,而不是日期属性。目前,您没有更改属性日期的值,只是在子组件中获取一个日期属性,然后在dateUpdate computed属性中使用该日期返回不同的值。此不同值的名称为dateUpdate,如果希望看到值更改,则应监视此计算属性 孩子 道具:{ 日期:String, }, 手表:{ 日期更新值{ console.logvalue } }, 计算:{ 日期更新{ ... }, }```侦听子组件vue.js中的选择选项更改,vue.js,Vue.js,尝试从子组件更改父组件的选择选项值。这里是结构 母公司 我想听听date道具,里面的dateUpdate试图使用watch:仍然无法控制台。记录更改。。。我错过了什么 您应该注意的是dateUpdate computed属性的值,而不是日期属性。目前,您没有更改属性日期的值,只是在子组件中获取一个日期属性,然后在dateUpdate computed属性中使用该日期返回不同的值。此不同值的名称为dateUpdate,如果希望看到值更改,则应监视此计算属性 孩子 道具:{ 日期:String, }
我犯了多大的新手错误啊。谢谢你的解释
<child-comp :date="date" />
<select v-model="date">
<option value="2019-09">2019年9月</option>
<option value="2019-10">2019年10月</option>
<option value="2019-11">2019年11月</option>
<option value="2019-12">2019年12月</option>
<option value="2020-20">2020年01月</option>
</select>
data(){
return {
date: "",
};
},
props: {
date: String,
},
watch: {
date(value){
console.log(value)
}
},
computed: {
dateUpdate(){
console.log(this.date)
var dt = new Date(),
ldt = new Date(dt.getFullYear(), dt.getMonth() + 1, 0),
y = ldt.getFullYear(),
m = ("00" + (ldt.getMonth() + 1)).slice(-2),
d = ("00" + ldt.getDate()).slice(-2),
result = y + "年" + m + "月" + d + "日";
return result;
},
}