在controller
我遵循的方法中:
var isPaused = false;
$scope.switcher = function (booleanExpr, trueValue, falseValue) {
return booleanExpr ? trueValue : falseValue;
};
$scope.isPaused = function () {
return isPaused;
};
我可以从 HTML 中调用它,例如:
<body ng-controller="Cntrl">
...
<h4>
{{ switcher( isPaused(), 'Search Address Mode', 'Search Location Mode' )}}
</h4>
<div class="btn-group">
...
</div>
如您所见,如果我得到isPaused()
回报false
<h4>Search Location Mode</h4>
这是实用程序,因此我想将其定义为factory
feederliteModule.factory('switcher', function () {
return {
sw: function (booleanExpr, trueValue, falseValue) {
return booleanExpr ? trueValue : falseValue;
}
};
});
没有例外,但
当我尝试这样称呼它时:
<h4>
{{ switcher.sw( isPaused(), 'Search Address Mode', 'Search Location Mode' )}}
</h4>
<div class="btn-group">
...
</div>
什么都没发生。
**我添加'switcher'
到控制器。
如何从 HTML 调用工厂方法?
(*如果不清楚,欢迎您更改/编辑我的问题)
谢谢,