在 Vue2 中,如何从对象中删除观察器功能以保存在 cookie 中



我有以下代码片段,并希望从user.accounts对象中删除观察器功能。我该怎么做? this.$cookies是对我的vue-cookies实例的引用

setUserAccount(user, account){
  // var accounts = Object.assign({},user.accounts)
  this.$cookies.set('AUTH_TOKEN', user.authHash);
  this.$cookies.set('CURRENT_ACCOUNT', user.id);
  this.$cookies.set('ACCOUNTS', user.accounts);
  console.log(user.accounts);
},

将对象转换为 JSON 字符串。 这将删除所有 Vue 观察器机制。

const strAccounts = JSON.stringify(user.accounts)
this.$cookies.set('ACCOUNTS', strAccounts);

并将其转换回来(没有观察器功能(。

JSON.parse(strAccounts);

唯一需要注意的是,您需要注意对象中的circular references,并且functions不会被序列化。

最新更新