Как можно оптимизировать выражения, передаваемые в директиву ng-disabled на angularJS?

У меня есть следующее выражение, обернутое в функцию области видимости, чтобы отключить кнопку добавления в поле зрения с помощью директивы angularJS ng-disabled:

$scope.disableAddButton = function() {
    return (!(currentObjCopy.name || currentObjCopy.name.trim() || currentObjCopy.numAttachments) &&
            (mac.input != 'static' || currentObjCopy.name.trim() == '')) ||
            !(selectedRow && currentObjCopy) ||
            ((mac.input != 'random' && !staticMacTemp.length) && !currentObjCopy.startMac));
}

Есть ли другие альтернативы для оптимизации этого выражения для перехода в ng-disable следующим образом:

<button type="button" class="px-Button px-Block-Element" ng-click='addLocal()'
                            ng-disabled="!disableAddButton()">Add</button>

При передаче выражений непосредственно в директиву работает нормально, но передача в виде функции, которая приводит к тому, что кнопка не отключается, даже выражения ложные.

Пожалуйста, игнорируйте переменные / объекты Js, так как они могут быть неопределенными, нулевыми или пустыми

0 ответов

Другие вопросы по тегам