如何在离子应用

时间:2017-06-08 11:19:34

标签: android ios ionic-framework

在我的离子应用中,我有一个有2个按钮的屏幕。在按下每个按钮时,我调用一个执行密集网络任务的功能。一切都运作良好。

通常当我按下其中一个按钮时,它会调用该功能。但是,如果我再次按下该按钮,它会再次调用该功能并执行相同的操作。如果我之前按过,我不希望它再次调用函数。只有当我按下另一个按钮然后再次按下该按钮时,它才应该调用该功能。

那么,在调用函数之前,我可以了解按钮的活动状态吗?

我是Ionic的新手,所以对此有所帮助。

按钮代码:

<div class="button-bar button-bar-full bar-light"
             ng-if="activityLog.enabledChecked && !activityLog.disabledToggle">
            <a class="button" ng-class="{'button-active': activityLog.isUnblockedFiltered}"
               ng-click="switchFilter(true)">{{ 'main.activity-log-blocked-report' | i18n }}</a>
            <a class="button" ng-class="{'button-active': !activityLog.isUnblockedFiltered}"
               ng-click="switchFilter(false)">{{ 'main.activity-log-full-report' | i18n }}</a>
        </div>

PS:我可以应用一些标志,可以使这项工作,但想知道我是否可以通过一些api了解按钮的状态。

由于

2 个答案:

答案 0 :(得分:1)

您可以使用以下方法检查按钮是否被禁用

var target = angular.element(document.getElementById("#buttonId"));
if (target.prop('disabled')) {
    // Button is disabled
    //Do something
}

答案 1 :(得分:0)

在您的视图中,将ng-disabled绑定到控制器“disableButton”中的属性,如下所示,并在单击按钮时将其设置为true。然后在执行api调用时该按钮将被禁用,在完成时,您可以将其设置为false以再次启用该按钮。

<a class="button" ng-disabled="disableButton" ng-class="{'button-active': activityLog.isUnblockedFiltered}"
           ng-click="switchFilter(true)">{{ 'main.activity-log-blocked-report' | i18n }}</a>