Создать глобальную переменную в .ts файле - PullRequest
0 голосов
/ 18 мая 2018

В настоящее время мне нужно добавить событие в браузер внутри функции CheckSocialMedia.Однако он говорит, что не может найти имя.

Так как мне сделать глобальную переменную browser в файле .ts?Я пробовал некоторые вещи, но ничего не работает.Спасибо

import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
import { InAppBrowser, InAppBrowserOptions } from "@ionic-native/in-app-browser";
import { Platform } from 'ionic-angular';
import { AppAvailability } from '@ionic-native/app-availability';
@Component({
  selector: 'page-home',
  templateUrl: 'home.html'
})
export class HomePage {
    public browser: object//doesn't work

  constructor(public navCtrl: NavController, private inAppBrowser: InAppBrowser, public platform: Platform, private appAvailability: AppAvailability)
  {
      //options for iab
      const options: InAppBrowserOptions = 
      {
          toolbar: 'no',
          location: 'no',
          zoom: 'no'
      }

      //when device rdy
     this.platform.ready().then( () => {

         browser = this.inAppBrowser.create("https://www.awebsite.co.uk/", '_blank', options);
            browser.on('loadstart').subscribe(event => { this.CheckSocialMediaLinks(event.url); });
     })

  }

  //check if link is for social media
  CheckSocialMediaLinks(url: string){ //I need to resubscribe the event
      const watch = browser.on('loadstart').subscribe(event => { this.CheckSocialMediaLinks(event.url); });
}

1 Ответ

0 голосов
/ 18 мая 2018

Глобальные переменные, в общем, плохие и это антишаблон в Ionic. Лучше всего использовать провайдера, где хранятся все глобальные переменные, и использовать этого провайдера в компонентах, где нужны эти глобалы.Взгляните на это обсуждение и Майк ответит.https://forum.ionicframework.com/t/global-variables-on-ionic-2/45890/7?u=tomstumshais

Или еще один пример решения этой глобальной проблемы.https://forum.ionicframework.com/t/how-to-change-value-of-global-variable-on-any-files-in-ionic/103294/5?u=tomstumshais

...