javascript - Vuejs如何取回原始数组值
问题描述
Vuejs:
我有主对象数组
testArray
[ __ob__: Observer]
{
`id` => 23,
`value` => 65674
}
{
`id` => 20,
`value` => 23423
}
{
`id` => 18,
`value` => 55434
}
{
`id` => 22,
`value` => 546464
}
如果我迭代并尝试设置数组的值:
testArray.forEach((e2) => {
Vue.set(e2, 'value', 0);
});
上面的代码工作并将值设置0
为根据id
,但是,这也将主数组设置0
为。如何将值重置回原始状态?
我必须克隆原始数组吗?如何在不重新加载页面的情况下恢复价值?
解决方案
显然,它会改变主数组值,因为您只是在函数中创建对主数组的引用,实际上您正在迭代原始对象。您必须创建上述对象的副本并对其进行变异,将原始对象保留为这是。
推荐阅读
- amazon-web-services - IAM 用户 S3 权限和 S3 中的 Bucket 权限哪个先执行?
- google-chrome - setbackgroundmessagehandler 不在 chrome 中显示消息
- javascript - React Native 中的椭圆曲线密码学
- java - Android Studio突然显示一切错误
- python - 如何在运行时访问 setup.py 中指定的 data_files?
- regex - 用于选择带有至少两个下划线的单词的正则表达式
- ios - Swift UI 列表:点击单元格时打开外部 URL
- swiftui - SwiftUI - 点击按钮更改 VStack 的背景颜色
- javascript - 为什么即使在 alert() 之前调用 preventDefault() 也会执行 alert()?
- react-native - 当我通过 `--deviceId` 时,`react-native run-android` 失败