Как можно оптимизировать выражения, передаваемые в директиву 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, так как они могут быть неопределенными, нулевыми или пустыми