Javascript 从服务获取数据后,清除Ngondestory上的静态数据
我想清除Ngondestory的数据。我正在从一个服务获取这个静态数据。 当前的情况是,我正在使用相同的组件添加编辑,我只想在用户完成编辑后清除临时静态数据Javascript 从服务获取数据后,清除Ngondestory上的静态数据,javascript,angular,typescript,rxjs,angular-lifecycle-hooks,Javascript,Angular,Typescript,Rxjs,Angular Lifecycle Hooks,我想清除Ngondestory的数据。我正在从一个服务获取这个静态数据。 当前的情况是,我正在使用相同的组件添加编辑,我只想在用户完成编辑后清除临时静态数据 export class LeadsDefaultDataService { tempData; private leadsDefaults = { leads: { data: [ { type: 'page_title', data: { title: 'Enter data',
export class LeadsDefaultDataService {
tempData;
private leadsDefaults = {
leads: {
data: [
{
type: 'page_title',
data: {
title: 'Enter data',
}
},
{
type: 'page_layout',
data: {
backgroundColor: '#FFFFFF'
}
}
}
};
/**
* Constructor
*/
constructor(
) {}
/**
* Function used to return the default data of qrCategory
* @param category: Name of the category
*/
getLeadsDefaultData(category: string) {
return this.leadsDefaults[category].data;
}
}
在组件中:
constructor(
private defaultData: LeadsDefaultDataService,
) {
}
// For getting the data
this.leadsData = this.defaultData.getLeadsDefaultData('leads');
// Reset the leadsData.
ngOnDestroy() {
this.leadsData = null; // not working....
}
您只是在取消引用。作为一种更好的方法,您可以通过在服务中公开方法来实现,如下所示
export class LeadsDefaultDataService {
.......
setLeadData(category: string, value: any){
this.leadsDefaults[category].data = value;
}
}
并从组件调用此方法
ngOnDestroy() {
this.defaultData.setLeadData('leads', null);
}
您只是在取消引用。作为一种更好的方法,您可以通过在服务中公开方法来实现,如下所示
export class LeadsDefaultDataService {
.......
setLeadData(category: string, value: any){
this.leadsDefaults[category].data = value;
}
}
并从组件调用此方法
ngOnDestroy() {
this.defaultData.setLeadData('leads', null);
}