引用到另一个类的数组字段数组字段没有't刷新

Array field referenced to another class Array filed doesn't refresh

本文关键字:数组 字段 刷新 引用 另一个      更新时间:2023-09-26

我有

class A{
  users = new B().users;
}
class B{
  users : Array<any> = [];
}

在第一次运行时,两个类中的users字段是相同的,但当类B中的用户更改时,A中的用户不会更改。示例:一开始A.用户和B.用户是[user1]当我向B.users([user1,user2])添加新用户时,A.users仍然不变。知道吗?

提前感谢。。。

任何想法

这取决于你如何添加它们。如果你正在做类似b.users = b.users.concat([another]);的事情,那么b.users将是一个新的数组,与a.引用的数组不同

注意:让两个类指向同一个数组似乎是个坏主意,因为突变会很快失控,你不会知道是什么移动了你的奶酪。但是,如果没有一个更大的上下文,如果你愿意,你可以在单独的问题中提出,我就无法提供更多的架构建议。