if else if else in angular js

if else if else in angular js

我必须将 angular 合并到我的 slim 文件中,我不确定如何转换 if else block in angular。我知道 angular 没有 ng if else 语句但是有没有办法将下面的代码更改为 angular

- if @cart['empty'] 
   cart is empty
- elsif @cart['invalid']
   can't proceed
- else
  -@cart['Items'].each do |item|
      #{item['description']}

我想实现这样的目标

  ng-if="cart.empty"
     cart is empty

  ng-else-if cart.invalid
     can't proceed

  ng-else
     ng-repeat="cart.Items as item"
          item.description

您要查找的是 ng-switch 指令。

首先获取一些包含切换条件的变量:

$scope.getStatus = function(cart) {
  if (cart.empty) return 'empty';
  if (cart.invalid) return 'invalid';
}

然后使用指令:

<div ng-switch = "getStatus(cart)">
  <div ng-switch-when = "empty">Cart is empty</div>
  <div ng-switch-when = "invalid">Can't proceed</div>
  <div ng-switch-default>.... ok ....</div>
</div>