仍然是角色
的新手如何在控制器中的函数$ scope.change中执行if else条件
我想这样做$ scope.SomeValue == 1然后$ scope.fn1()应该执行,如果$ scope.SomeValue == 2则$ scope.fn2 else $ scope.fn3。
我尝试过传统的if else,app仍可正常工作,但只要我通过滑块或输入框更改动态值,就会获取最后一个函数中定义的默认值
HTML
<input type="radio" ng-model="SomveValue.value" name="a" value="1" ng-click="fn1()">
<input type="radio" ng-model="SomveValue.value" name="a" value="2" ng-click="fn2()">
<input type="radio" ng-model="SomveValue.value" name="a" value="3">
控制器
$scope.Somevalue = {
value: 1
}
$scope.fn1 = {
// Some Code
}
$scope.fn2 = {
// Some Code
}
$scope.fn3 = {
// Some Code
}
$scope.change = {
$scope.fn1();
$scope.fn2();
$scope.fn3();
}
答案 0 :(得分:2)
您可以将ngSwitch用于此用例。你可以指定一个表达式并定义,whap会发生在哪个值上。
<ANY ng-switch="Somevalue.value">
<ANY ng-switch-when="1"><a ng-click="fn1()"></a></ANY>
<ANY ng-switch-when="2"><a ng-click="fn2()"></a></ANY>
<ANY ng-switch-default>...</ANY>
</ANY>