如何在 select 使用 ionic 在另一个组件中更改选项后刷新同一页面?
How to refresh the same page after select option changes in another component using ionic?
我是 ionic 的新手。用户从下拉列表中选择一个选项后,我试图刷新同一页面。但是我的下拉列表在另一个组件中(有点像部分视图),我在其他组件中使用了它。
我尝试导航,但没有刷新页面。我想要当用户选择组件将刷新的选项时。
ngOnInit 方法工作正常顺便说一句。
这是我的部分视图组件:
navigateTo(path: string) {
localStorage.setItem('selectedapp', this.appId);
this.router.navigate([path]);
}
这是这个组件的html:
<ion-item *ngIf="!isPrivate">
<ion-label>فروشگاه های من</ion-label>
<ion-select [(ngModel)]="appId" (ionChange)="navigateTo(model[0].url)" ok-text="تایید" cancel-text="کنسل" [value]="00000000-0000-0000-0000-000000000000">
<ion-select-option value="00000000-0000-0000-0000-000000000000">همه</ion-select-option>
<ion-select-option value="{{item.applicationId}}" *ngFor="let item of model">{{item.applicationTitle}}</ion-select-option>
</ion-select>
</ion-item>
这是我在另一个 html 页面中使用上述组件标签的地方:
<app-user-applications returnUrl="prizePackages"></app-user-applications>
在这种情况下,我想刷新 prizePackages 页面。
我该怎么办?
我在带有 Agular 的 Ionic 中推荐的第一件事是将 local-storage 实现更改为 ionic 建议的实现,因为浏览器的本地存储不起作用(它使用 @ionic/storage ).
要在组件之间进行更改,我建议您使用 RxJS,通过 Angular 服务,另一种倾向于使用的实现是 Redux,我不太喜欢它,作为我做的最后一个选择不推荐,在服务中使用promises来连接组件,这会带来很多问题。
希望我的回答对你有用!
移动应用程序中没有重新加载。鉴于您的情况,我建议您将 ngif 添加到您要根据新数据隐藏/显示的 html 内容。
因此,当您获得新数据时,您会隐藏您的 html 内容,用新数据更新它并再次显示它。
使用
解决了这个问题
window.location.reload();
我是 ionic 的新手。用户从下拉列表中选择一个选项后,我试图刷新同一页面。但是我的下拉列表在另一个组件中(有点像部分视图),我在其他组件中使用了它。 我尝试导航,但没有刷新页面。我想要当用户选择组件将刷新的选项时。 ngOnInit 方法工作正常顺便说一句。 这是我的部分视图组件:
navigateTo(path: string) {
localStorage.setItem('selectedapp', this.appId);
this.router.navigate([path]);
}
这是这个组件的html:
<ion-item *ngIf="!isPrivate">
<ion-label>فروشگاه های من</ion-label>
<ion-select [(ngModel)]="appId" (ionChange)="navigateTo(model[0].url)" ok-text="تایید" cancel-text="کنسل" [value]="00000000-0000-0000-0000-000000000000">
<ion-select-option value="00000000-0000-0000-0000-000000000000">همه</ion-select-option>
<ion-select-option value="{{item.applicationId}}" *ngFor="let item of model">{{item.applicationTitle}}</ion-select-option>
</ion-select>
</ion-item>
这是我在另一个 html 页面中使用上述组件标签的地方:
<app-user-applications returnUrl="prizePackages"></app-user-applications>
在这种情况下,我想刷新 prizePackages 页面。 我该怎么办?
我在带有 Agular 的 Ionic 中推荐的第一件事是将 local-storage 实现更改为 ionic 建议的实现,因为浏览器的本地存储不起作用(它使用 @ionic/storage ).
要在组件之间进行更改,我建议您使用 RxJS,通过 Angular 服务,另一种倾向于使用的实现是 Redux,我不太喜欢它,作为我做的最后一个选择不推荐,在服务中使用promises来连接组件,这会带来很多问题。
希望我的回答对你有用!
移动应用程序中没有重新加载。鉴于您的情况,我建议您将 ngif 添加到您要根据新数据隐藏/显示的 html 内容。
因此,当您获得新数据时,您会隐藏您的 html 内容,用新数据更新它并再次显示它。
使用
解决了这个问题window.location.reload();