1、需要显示一个数组对象的数据,但是双向绑定的话,编辑时显示数据会一直变化,要求是显示数据不变;
2、考虑到了深拷贝对象,然后用拷贝去编辑,但是数据量大的话,性能可能出问题,而且两个数据交换起来也麻烦;
3、angular1里有一次性绑定的方法"::",但是试了angular4里面不能用了;
4、请问有没有好的方法
1、需要显示一个数组对象的数据,但是双向绑定的话,编辑时显示数据会一直变化,要求是显示数据不变;
2、考虑到了深拷贝对象,然后用拷贝去编辑,但是数据量大的话,性能可能出问题,而且两个数据交换起来也麻烦;
3、angular1里有一次性绑定的方法"::",但是试了angular4里面不能用了;
4、请问有没有好的方法
不知道是不是和你的要求一样,看一下我写的
新建一个服务app.service.ts,我初始化了一个数组,里面一个set和get方法分别设置和获取数据。
import { Injectable } from '@angular/core';
@Injectable()
export class AppService {
private testData = ['aaa','bbb','ccc','ddd'];
constructor() { }
public setData(data){
this.testData = data;
}
public getData(){
return this.testData;
}
}
然后在组件初始化的时候引入这服务调用getData赋值到组件里面的itemArr
constructor(
private appService: AppService
){
this.itemArr = this.appService.getData();
}
把itemArr进行模板遍历,你在其他地方调用setData的话这个组件里面的数据是不会变化的
10 回答11.2k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
谢邀!
Angular2 的变化检测是允许自定义的;具体参数可以检索:
ChangeDetectionStrategy.CheckOnce
。