Глобальные компоненты в Ionic - PullRequest
0 голосов
/ 19 ноября 2018

У меня общий вопрос о возможной эффективности вызова ионного компонента из службы вместо импорта каждого компонента отдельно в каждом файле .ts.

Например, я довольно часто использую ToastController и AlertController, и недавно я начал добавлять эту функцию в свой сервис для простоты, но я не уверен, будет ли это в идеале лучше или хуже для моего приложения.

Пример кода:

service.ts

import { Injectable } from '@angular/core';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/interval';
import { Subscription } from 'rxjs/Subscription';
import {ToastController, LoadingController } from 'ionic-angular';
import { AppVersion } from '@ionic-native/app-version';

@Injectable()
export class ReapService {
  constructor(public loadingCtrl:LoadingController,
              public toast: ToastController,
              public network: Network,
              public storage: Storage,
              public appVersion: AppVersion){}


presentToast(msg) {
      let toast = this.toast.create({
        message: msg,
        duration: 3000,
        position: 'bottom',
        dismissOnPageChange: false,
        cssClass: 'customToast'
      });

      toast.onDidDismiss(() => {
        //console.log('Dismissed toast');
      });

      toast.present();
      }
 }

другой файл .ts

onLogout(){
          this.reap.formStart = null;
          this.reap.token = "";
          this.storage.clear();
          const loading = this.loadingCtrl.create({
            content: 'Logging Out...'
          });
          loading.present();
             setTimeout(() => {
                this.reap.removeConnections();
                
                
                //Where I call the toast controller
                this.reap.presentToast('Logged Out');
                
                
                this.navCtrl.popToRoot();
                loading.dismiss();
            }, 2000);
          
     }

Я просто хотел убедиться, что это выполнимо для приложения и возможно еще более эффективно, если бы я начал использовать другие Компоненты, похожие на Toast. Я знаю, что до сих пор экономилось время, необходимое для импорта компонента в каждый файл .ts, который я хочу использовать его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...