angular - 常量服务变量 Angular
问题描述
我有一个角度服务,我存储了一个array_item
从我的 api 调用获得的数组,并且在组件中我声明了 2 个变量var_1
,并且var_2
它们都具有我从服务中获得的相同值
即:var_1 = this.service.array_item
&&var_2 = this.service.array_item
我在我的 HTML 中将它列为 2 个 DIV 的列表,但是当我更新 list_1 中的值时,它会更改服务中的数组项值,这会自动更改我在 list_2 中的数组项数据。我不希望列表 2 被更改,我希望它保持不变。欢迎提出建议或解决方案。
提前致谢
解决方案
是的,这种行为很明显,因为 JavaScript 是通过引用传递的。因此,您可以通过在组件级别保留原始数组的另外 2 个副本来解决问题。
可以按照本参考中的说明进行复制
然后组件代码会像,
var_1 = this.service.array_item.copy() // Implement copy function
var_2 = this.service.array_item.copy() // Implement copy function
推荐阅读
- react-native - IOS React Native ImagePickerManager 为空
- php - 基于复选框的随机数间隔
- linux - 在cli中将具有相同行内容的列插入csv
- excel - 如何在从 filemaker 导出的“excel.xls”上插入图像?
- java - 如何使用 Mockito 模拟可分页对象?
- arrays - 如何在 Julia 中定义一个空的 DataFrame 数组?
- python - 在 Django 模型方法中引用 ManyToMany 字段
- c# - 基于字符串的自定义排序
- java - Reactor 混合推/拉模型如何工作?
- apache - 如果 png、gif 和 jpg 的 X-Header 不存在,.htaccess 将失败