从位于其他组件的函数中检索值

时间:2017-12-21 15:41:18

标签: angular typescript ionic-framework

所以,我正在使用函数function Calculator() { this.calculate = function(sum) { this.summ = 0; this.sumArr = sum.split(' '); // make array from string to clear from non-numbers values this.newSum = this.sumArr.filter(function(number) { return number > 0; }); for (var i = 0; i < this.sumArr.length; i++) { // based on the sign standing between numbers calculate it if (this.sumArr[i] == '+') { return this.summ = parseInt(this.newSum[0]) + parseInt(this.newSum[1]); } else if (this.sumArr[i] == '-') { return this.summ = parseInt(this.newSum[0]) - parseInt(this.newSum[1]); } } }; }; var calc = new Calculator; console.log(calc.calculate("3 + 7")); // 10 console.log(calc.calculate("3 - 7")); // -4来检查设备的可用性。对错。

我想检索其他组件中getAvailability()生成的值,例如home.ts,并在那里使用它。 事实上,我正在根据它是否大于0来检查它是否可用。

这是getEvents.ts

中的getAvailability()函数
getEvents.ts

我在构造函数的home.ts中调用它,期望返回布尔值,但没有任何反应,只是未定义。我已经尝试了很多,我确信我已经失去了联系。如果有人会帮忙,我会感激。 在getEvents.ts页面中,它正确记录了值,但是当我尝试检索时,它返回undefined。

getAvailability(){
     var isAvailable;

    console.log('called getAvailability');

      let availability;
      this.getEvent.getEvent().subscribe(response => {

       let posicao = result;
       if(posicao === undefined){

        console.log('error');
       }else{

        //device
        var device = posicao['value'];


       }

       if(device>0){

        this.isAvailable = false;

      }else{

        this.isAvailable = true;

      }

    });
    console.log(isAvailable);
    return isAvailable;
    }

有人可以帮助我吗?

恢复,我想从其他文件中检索getAvailability函数的值,但我能做的就是调用记录布尔值的函数。

0 个答案:

没有答案