当悬停在按钮上时,角度ui工具提示会触发其他按钮的禁用

时间:2018-04-25 17:24:57

标签: angularjs tooltip angular-ui-bootstrap

我使用ui bootstrap tooltip插件,如下所示:

<button type="button" uib-tooltip="new item">
    new item
</button>
<button ng-disabled="vm.testDisabled()">
    search
</button>

angular.module('rgh').controller('CourseController', CourseController);

function CourseController () {
    function testDisabled() {
        console.log('testDisabled called')
        return false;
    }
}

但问题是,当我将鼠标悬停在新商品按钮上时,我会看到Chrome控制台中的testDisabled called日志,我认为它来自uib-tooltip的不当行为。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

它并不合适,它的角度是多么有效!当您通过按钮并且工具提示显示摘要循环运行时,因为您已为ngDisabled提供了一个函数,该函数将在每个摘要周期运行(即使不需要),因为它& #39; s返回的结果将用于告诉angular是否应该禁用输入!!

要避免这种情况,请将ngDisabled与在某些条件下将在控制器中更改的变量一起传递

<button ng-disabled="vm.isTestDisabled">
    search
</button>