Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript VueJS中的数据更新机制? 导出默认值{ 数据(){ 返回{ 数据:{}, dataTemp:{} } }, 方法:{ 更新数据(){ let querys={…this.$route.query} 此参数。数据={ …这是数据, pID:querys.pID, sID:querys.sID } this.dataTemp={ …这个.dataTemp, pID:querys.pID, sID:querys.sID } } } }_Javascript_Vue.js_Ecmascript 6 - Fatal编程技术网

Javascript VueJS中的数据更新机制? 导出默认值{ 数据(){ 返回{ 数据:{}, dataTemp:{} } }, 方法:{ 更新数据(){ let querys={…this.$route.query} 此参数。数据={ …这是数据, pID:querys.pID, sID:querys.sID } this.dataTemp={ …这个.dataTemp, pID:querys.pID, sID:querys.sID } } } }

Javascript VueJS中的数据更新机制? 导出默认值{ 数据(){ 返回{ 数据:{}, dataTemp:{} } }, 方法:{ 更新数据(){ let querys={…this.$route.query} 此参数。数据={ …这是数据, pID:querys.pID, sID:querys.sID } this.dataTemp={ …这个.dataTemp, pID:querys.pID, sID:querys.sID } } } },javascript,vue.js,ecmascript-6,Javascript,Vue.js,Ecmascript 6,在上面的示例中,当我更新this.data时,this.dataTemp也将被更改 但我认为这两者没有关系 请给我解释一下这个问题。 谢谢 这将data和dataTemp的初始值设置为空对象。请注意,它们都是不同的对象-data!==数据温度 data(){ 返回{ 数据:{}, dataTemp:{} } } 如果有人调用this.updateData(),这两个函数都会被更改,因为我们同时为data和dataTemp赋值。如果只想更新数据,可以将方法更改为 updateData(){ le

在上面的示例中,当我更新this.data时,this.dataTemp也将被更改

但我认为这两者没有关系

请给我解释一下这个问题。
谢谢

这将
data
dataTemp
的初始值设置为空对象。请注意,它们都是不同的对象-
data!==数据温度

data(){
返回{
数据:{},
dataTemp:{}
}
}
如果有人调用
this.updateData()
,这两个函数都会被更改,因为我们同时为
data
dataTemp
赋值。如果只想更新
数据
,可以将方法更改为

updateData(){
let querys={…this.$route.query}
此参数。数据={
…这是数据,
pID:querys.pID,
sID:querys.sID
}
}

如果执行
udpateData
则将对象分配给
此.dataTemp
。你期待什么
<script>
export default {
  data() {
    return {
      data: {},
      dataTemp: {}
    }
  },
  methods: {
    updateData() {
      let queries = { ...this.$route.query }
      this.data = {
        ...this.data,
        pID: queries.pid,
        sID: queries.sid
      }
      this.dataTemp = {
        ...this.dataTemp,
        pID: queries.pid,
        sID: queries.sid
      }
    }
  }
}
</script>