英文:
Why computed function does not recognize that props have changed?
问题
我是新手使用Vue。
我想知道为什么计算属性函数不按预期工作。
我想要将我的todo.date(props)更改为特定的格式!
import dayjs from 'dayjs'
export default{
name: 'To-do',
props: {
todo: Object
},
data() {
return {
isChecked: this.todo.checked,
isModifying: false,
}
},
computed: {
getDate() {
this.date = dayjs(this.todo.date).format("YY MM DD")
}
},
}
这是需要显示的内容,但它没有显示出来。
<div>{{ getDate }}</div>
我的计算属性函数应该在date(props)发生更改时识别并将其更改为正确的格式!
英文:
Im new to Vue.
I wanna know why computed function is not working as expected.
I want to change my todo.date (props) to specific form!
import dayjs from 'dayjs'
export default{
name:'To-do',
props:{
todo:Object
},
data(){
return{
isChecked:this.todo.checked,
isModifying:false,
}
},
computed:{
getDate(){
this.date = dayjs(this.todo.date).format("YY MM DD")
}
},
}
this is what needs to show up, but it's not.
<div>{{ getDate }}</div>
my computed function should recognize whenever date(props) has changed and change it to right form!
答案1
得分: 2
在计算属性中,您应该返回一个值,而不是修改属性:
computed:{
getDate(){
return dayjs(this.todo.date).format("YY MM DD")
}
},
英文:
Inside the computed property you should return a value, not mutate a property :
computed:{
getDate(){
return dayjs(this.todo.date).format("YY MM DD")
}
},
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论