Ionic3 - Как отправить данные из HomePage в другой файл TS через ShareProvider - PullRequest
0 голосов
/ 01 июля 2018

Я не понимаю, как вставить данные кнопки нажатия в другой файл TS с помощью файла провайдера. Поэтому я хочу контролировать 4 кнопки общего доступа из home.html, я пытаюсь передать данные из home.html -> home.ts -> Popovershare.ts Я добавил кнопку поделиться внутри квадратной кнопки благодаря poppvers. И когда я пытаюсь вызвать функцию home напрямую к popovers.ts "constructor(here)", я получаю несколько ошибок.

This is my home.html

    <button icon-only  (click)="click(1)">
    <button icon-only  (click)="click(2)">
    <button icon-only  (click)="click(3)">
    <button icon-only  (click)="click(4)">

This is my home.ts
 click(myEvent) {

    this.indexNumber = myEvent

    let numbr_select

    if (this.indexNumber == 1) {
      numbr_select = 1
    }
    if (this.indexNumber == 2) {
      numbr_select = 2
    }
    if (this.indexNumber == 3) {
      numbr_select = 3
    }
    if (this.indexNumber == 4) {
      numbr_select = 4
    }
    }
    this.indexNumber =  numbr_select

     this.shareprovider.ValueFonction(this.indexNumber)

    let popover = this.popoverCtrl.create(PopoversharePage, {

    }, {
      cssClass: 'csspopover'
    });
    popover.present({
      ev: myEvent
    });
  }

это мой shareprovider.ts

  template: `


      <ion-grid>
... share button with (click)="shareclick()"
      </ion-grid>

  constructor() {
    this.ValueFonction()
  }
  ValueFonction(Number_selected?: any) {
    for (let i = 1; i < 7; i++) {
      if (Number_selected == i) {
        //    console.log(Number_selected, 'Valeur')
      }
    }
    return Number_selected
  }

А это мой Popovershare.ts

let i
for (let i = 0; i < 5; i++) {
  switch (i) {
    case 0:
      this.ShareProvider.ValueFonction(1)
      alert(1)
      break;
    case 1:
      this.ShareProvider.ValueFonction(2)
      alert(2)
      break;
    case 2:
      this.ShareProvider.ValueFonction(3)
      alert(3)
      break;
    case 3:
      this.ShareProvider.ValueFonction(4)
      alert(4)
      break;
  }
}

В этих кодах он показывает в консоли номер, который я назначил для каждой кнопки, но когда я пытаюсь позвонить из popovers.ts на shareprovider.ts с этим

this.ShareProvider.ValueFonction(4)  all alert run at the same time, i don't understand why.

Я просто хочу управлять shareclick(), но эта кнопка находится в другом файле, надеюсь, вы понимаете.

Спасибо за внимание!

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