导航、页面更改时丢失数据
Loosing data upon navigation, page change
我的应用程序显示一个可以编辑的 profile name
。当我编辑它时,它会发生变化,太棒了。当我导航并返回时,数据重置。
我尝试将数据(配置文件名称)保存为 String
变量,我尝试将数据保存为列表并使用 String[0]
显示名称以显示未移位的配置文件名字.
先走
<h3>{{profileService.profileName}}'s Profile</h3>
this.profileService.changeName(this.pName);
changeName(data){
this.profileName = data;
}
第二次
<h3>{{profileService.profileNames[0]}}'s Profile</h3>
this.profileService.changeName(this.pName);
changeName(data){
this.profileNames.unshift(data);
}
所以,再一次,当我从编辑页面转到主页时,它最初会更新。当我转到另一个页面并 return 时,更新的个人资料名称丢失了。谢谢!
您确定:
- 首页和编辑页都提供服务吗?
这可以通过以下方式完成:
在 app.module.ts 中(我想您希望您的更改在整个应用程序中持续存在)
@NgModule({
declarations:[
//your components here
],
imports:[
//your modules here
],
providers:[
ProfileService //and other services
]
})
或在profile.service.ts
import { Injectable } from '@angular/core';
@Injectable({
providedIn: 'root'// which means there will be a single instance of the service in the whole application
})
export class ProfileService {
}
- 主页和编辑页面之间的导航正在使用 Angular 路由器:https://angular.io/guide/router
我的应用程序显示一个可以编辑的 profile name
。当我编辑它时,它会发生变化,太棒了。当我导航并返回时,数据重置。
我尝试将数据(配置文件名称)保存为 String
变量,我尝试将数据保存为列表并使用 String[0]
显示名称以显示未移位的配置文件名字.
先走
<h3>{{profileService.profileName}}'s Profile</h3>
this.profileService.changeName(this.pName);
changeName(data){
this.profileName = data;
}
第二次
<h3>{{profileService.profileNames[0]}}'s Profile</h3>
this.profileService.changeName(this.pName);
changeName(data){
this.profileNames.unshift(data);
}
所以,再一次,当我从编辑页面转到主页时,它最初会更新。当我转到另一个页面并 return 时,更新的个人资料名称丢失了。谢谢!
您确定:
- 首页和编辑页都提供服务吗?
这可以通过以下方式完成: 在 app.module.ts 中(我想您希望您的更改在整个应用程序中持续存在)
@NgModule({
declarations:[
//your components here
],
imports:[
//your modules here
],
providers:[
ProfileService //and other services
]
})
或在profile.service.ts
import { Injectable } from '@angular/core';
@Injectable({
providedIn: 'root'// which means there will be a single instance of the service in the whole application
})
export class ProfileService {
}
- 主页和编辑页面之间的导航正在使用 Angular 路由器:https://angular.io/guide/router