角度刷新后将数据保留在页面中
Posted
技术标签:
【中文标题】角度刷新后将数据保留在页面中【英文标题】:Keep data in page after refresh in angular 【发布时间】:2021-08-21 11:43:29 【问题描述】:当我打开我的网站时,我会在顶部enter image description here 上看到“财务/代金券”,但是当我刷新页面时,只会出现“财务”,我不希望这样,当我刷新页面时它仍然会显示“财务/凭证”以及我发布的所有相关代码,请指导我输入哪个代码以及在哪里输入
export class TopBarComponent extends AppComponentBase
formName = ""
constructor(
injector: Injector,
private _formTitleService: FormTitleService,
)
super(injector);
ngOnInit()
this.getFormTitle();
getFormTitle()
this._formTitleService.getFormTitle()
.subscribe(name =>
this.formName = name;
);
html code
<div class="page-title">
/ <span>formName</span>
</div>
【问题讨论】:
嗯,您订阅了“某物”并将值设置为formName
,那么问题出在哪里?请提供minimal reproducible example
【参考方案1】:
您可以在您的组件中为formName = "Finance/voucher"
设置初始值,它会在页面刷新时保留。
【讨论】:
我不能这样做,因为formName变量存储“/”后面的值,还有更多页面请看代码 您需要提供登录信息或有关您的问题的更多信息,根据您从服务设置formName
的代码,因此它应该在加载时保留,因为该方法将在 ngOnInit 中再次运行。 Finance/voucher
的初始值是从哪里来的,如果不是来自服务,那么当您第一次加载它时?
导出类 FormTitleService constructor() formTitle= new BehaviorSubjectBehaviourSubject
,您需要使用formTitle.asObservable()
创建一个属性,该属性应该在您的组件中订阅。很难修复它并在评论中提供帮助,尝试在 jsfiddle 或其他地方创建代码演示以上是关于角度刷新后将数据保留在页面中的主要内容,如果未能解决你的问题,请参考以下文章