我在如何使ngShow在指定的超时时间内确定表达式挣扎,事实证明,Angular可以评估表达式,但无法反映视图中的更改,这里是代码我用ngShow的超时不能按预期工作
(查看)
<button
type="button"
class="btn btn-primary rule-fade"
tooltip="{{ proLang.tooltip.ruleApplyBtnTxt }}"
ng-click="applyRule('basic')"
ng-show="showApplyBtns(selectedRules, selectedObj)"
>
<span class="glyphicon glyphicon-dashboard"></span>
Apply Rules
</button>
(控制器) 并且,控制器执行showApplyBtn功能
//determine whether apply buttons should be shown
$scope.showApplyBtns = function(selectedRules, selectedObj) {
$timeout(function() {
return selectedRules.length == 1 && selectedObj.length == 1;
},500);
};
Angular可以确定结果(true或false),但似乎视图不反映更改。
任何帮助将不胜感激,谢谢!
感谢您的帮助,现在正常工作,谢谢!但我想知道为什么我的方法不起作用,因为它基本上遵循相同的规范,我的目的是延迟评估我的表达式,输出最终是一个布尔值,为什么我的方法不适用? – user2499325
嗨@ user2499325 - 我刚刚更新了我的答案,并解释了为什么您以前的代码没有按预期工作。 – sfletche
感谢您的澄清,我认为我的理念在阅读解释后更加清晰,非常感谢!我的尊敬! – user2499325