Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 重新加载应用程序时';s页面我的参数不见了_Angular_Typescript - Fatal编程技术网

Angular 重新加载应用程序时';s页面我的参数不见了

Angular 重新加载应用程序时';s页面我的参数不见了,angular,typescript,Angular,Typescript,我有一个bug的问题。当我刷新手机应用程序的页面时,部分参数会丢失。 如果参数传递不正确,“reDirect”将导致“/”而不是返回相应的对象 我正在使用Angular 8和打字脚本。我试图再次创建参数来解决这个问题,但这不起作用 这是当重新加载“params”不完整时接收参数的函数。 然后重定向变为“/” 参数在此加载到Nav参数中 import { IonicPage, AlertController, NavController, ModalController, NavParams, E

我有一个bug的问题。当我刷新手机应用程序的页面时,部分参数会丢失。 如果参数传递不正确,“reDirect”将导致“/”而不是返回相应的对象

我正在使用Angular 8和打字脚本。我试图再次创建参数来解决这个问题,但这不起作用

这是当重新加载“params”不完整时接收参数的函数。 然后重定向变为“/”

参数在此加载到Nav参数中

import { IonicPage, AlertController, NavController, ModalController, NavParams, Events } from 'ionic-angular';

constructor(private navCtrl: NavController,
              private alertCtrl: AlertController,
              public loading: LoadingHelper,
              private translate: TranslateService,
              private events: Events,
              private fb: FormBuilder,
              private modalCtrl: ModalController,
              private searchFormFactory: SearchFormFactory,
              public params: NavParams,
              public storage: StorageService,
              private ga: GoogleAnalytics,
              private fbHelpers: FacebookEventsHelpers,
              private flightProgramService: FlightProgramService) {
  }
如何避免在重新加载应用程序页面时丢失参数

this.searchFormService.searchForm(this.toolKey, this.params.data).first().subscribe((response) => {
      if (response.hasOwnProperty('error') && response.error !== '') {
        this.initHasError = true;
        this.loading.hide('searchForm');
        return;
      }
      if (response['redirect']) {
        return RedirectHelper.root(this.navCtrl, response['redirect']);
      }
      this.searchFormConfigData = response;
      this.searchButtonDisabled = false;

      if (this.toolKey === 'ticketing') {
        this.flightProgramService.getApplicablePrograms(this.searchFormConfigData.passengers.remainingProgramsDetails)
          .subscribe((flightPrograms) => {
            this.flightPrograms = flightPrograms;
            this.loading.hide('flightPrograms');
            if (this.flightPrograms.length > 0) {
              this.shouldDisplayFlightPrograms = true;
            }
          }
        );
      } else {
        this.loading.hide('flightPrograms');
      }

      if (this.searchFormConfigData.allowedToBook === false) {
        this.searchButtonDisabled = true;
      }

      if (!this.welcomeMessage && this.searchFormConfigData.welcomeMessage !== '') {
        this.storage.set('welcomeMessage', this.searchFormConfigData.welcomeMessage);
        this.welcomeMessage = this.searchFormConfigData.welcomeMessage;
      } else {
        this.storage.get('welcomeMessage').first().subscribe((value) => {
          this.welcomeMessage = value;
        });
import { IonicPage, AlertController, NavController, ModalController, NavParams, Events } from 'ionic-angular';

constructor(private navCtrl: NavController,
              private alertCtrl: AlertController,
              public loading: LoadingHelper,
              private translate: TranslateService,
              private events: Events,
              private fb: FormBuilder,
              private modalCtrl: ModalController,
              private searchFormFactory: SearchFormFactory,
              public params: NavParams,
              public storage: StorageService,
              private ga: GoogleAnalytics,
              private fbHelpers: FacebookEventsHelpers,
              private flightProgramService: FlightProgramService) {
  }