【发布时间】:2017-03-01 03:19:12
【问题描述】:
有没有办法缓存组件?
例如,我在一个包含一些搜索结果的页面上,我想查看结果的详细信息(它在其他页面上),我想返回(单击浏览器的后退按钮)到结果页面和保留搜索结果,无需再次搜索。
提前致谢。
我正在使用 Angular 2.0.2
【问题讨论】:
标签: caching angular angular2-components
有没有办法缓存组件?
例如,我在一个包含一些搜索结果的页面上,我想查看结果的详细信息(它在其他页面上),我想返回(单击浏览器的后退按钮)到结果页面和保留搜索结果,无需再次搜索。
提前致谢。
我正在使用 Angular 2.0.2
【问题讨论】:
标签: caching angular angular2-components
我使用这个简单的服务:
import { Injectable } from '@angular/core';
@Injectable()
export class SessionService {
storage = {};
constructor() { }
}
组件:
let selector = 'app-mycomponent';
export class MyComponent implements OnInit {
session = {
'table': {
'page': 1,
'rows': 10,
'sortOrder': 'asc',
'orderBy': null
},
'form': {
'field1': null,
'field2': null,
}
}
};
constructor(private sessionService: SessionService) { }
ngOnInit() {
this.sessionService.storage[selector] == null ? this.sessionService.storage[selector] = this.session : this.session = this.sessionService.storage[selector];
}
}
使用双向绑定保存所有更改。
【讨论】: