【问题标题】:how to stop a variable to sync Nuxt如何停止变量以同步 Nuxt
【发布时间】:2020-07-13 00:48:15
【问题描述】:

我返回一个变量作为

的结果
  async asyncData({ redirect, params, store }) {

那个变量是:

  return {
    camera: c,

我正在尝试将其克隆为

  created() {
    this.dummyCamera = this.camera

但即使我将任何内容更改为dummyCamera,它也会在this.camera 中更改?

我怎样才能阻止这种行为?

当我在 dummyCamera 中更改任何内容时,我想比较 dummyCamerathis.camera,但现在我无法这样做。

即使我更改了 this.camera 中的任何内容,

camera: {
  handler: function(newValue) {
    console.log(newValue)
    console.log(this.camera)
  },
  deep: true
}

newValuethis.camera 都一样吗?我怎样才能停止这种同步?

【问题讨论】:

  • 这能回答你的问题吗? Restrict vue/vuex reactivity
  • 即使在执行 Object.freez 时,也没有任何东西被冻结,一个对象的变化也会改变另一个对象

标签: vue.js nuxt.js


【解决方案1】:

停止同步的唯一可能是

  created() {
    this.dummyCamera = JSON.parse(JSON.stringify(this.camera)) 

这样您就可以使用新分配的变量。

【讨论】:

    猜你喜欢
    • 2012-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-01
    相关资源
    最近更新 更多