我有一项服务,其中包含一些数据:
@Injectable()
export class DataService {
data = {
a: [
{label: 'label 1', checked: true},
{label: 'label 2', checked: true},
{label: 'label 3', checked: true}
]
}
}
以及导入服务并使用data.a
中的数据生成复选框的组件(checked
属性指示每个复选框的初始状态)。用户选中并取消选中框后,DataService
中的值会自动按角度更新。
还有另一个服务StorageService
,它还会注入DataService
,并且每次更改data.a
属性时,都应自动将checked
存储到浏览器的本地存储中。我无法弄清楚的是如何观察那些嵌套的单个对象属性的变化?
答案 0 :(得分:0)
a
是一些什么东西?数组,接口?
在您的服务StorageService
中,您可以通过
constructor(private _dataService : DataService ){}
console.log(this._dataService.data.a[0].label);
如果这对您不起作用,请发布更多代码。