角三元运算符?有功能

时间:2017-09-07 15:48:51

标签: javascript angularjs

我有以下情况;我有两个从按钮操作的功能:

<button ng-click="functionOne || functionTwo()"></button>

现在我想要优化一点,我想只在它们返回一些东西时调用这些函数,否则我不想被调用并返回null或其他东西。现在我想知道是否可以使用三元运算符,例如:

<button ng-click="condition ? functionOne || functionTwo() : null"></button>

仅在condition为真时调用函数。

我已经测试过并且没有真正起作用:|

1 个答案:

答案 0 :(得分:2)

您可以将条件作为参数传递给函数,然后函数将检查它。如果这是真的,它会做某事,否则,它什么都不做。

那不是更干净吗?

<button ng-click="functionTwo(condition)"></button>

$scope.functionTwo = function (conditon) {
  if (condition) {
    //do what you want...
  }
};

我想你希望functionOne在原来的问题中回复你的情况。你可以随意改变它。

以下是我所描述的一个例子:

https://codepen.io/anon/pen/EvBVqE

如果您坚持使用三元运算符,那么您可以这样做,但我相信它更复杂:

https://codepen.io/anon/pen/qXzbBJ