父组件传递给子组件的props,赋值给子组件data中的属性,这个不是响应式的么?为什么不会变化?

父组件传递给子组件的props,赋值给子组件data中的属性,这个不是响应式的么?为什么不会变化?

问题描述:

data() {
return { id: articleId }
}

这个articleId就是props中的数据,当它变化的时候this.id为什么不会变化?

props: {
  articleId: Number
}
data() {
  return { id: this.articleId }
}

// 或者
watch: {
  articleId(val) {
   this.id = val;
  }
}

articleId 是值传递,所以 VUE 监听不到他的变化,你修改为对象就会响应变化了