如何在 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();