Ng-switch на пустой строке
Я использую Angular, и я хочу проверить, когда строка пуста, используя ng-switch. Следующий код, похоже, не работает для меня.
<div ng-switch on="foo">
<span ng-switch-when="">This string is empty</span>
<span ng-switch-default>This string is not empty</span>
</div>
Любая помощь с этим будет оценена.
Ответы
Ответ 1
Вам нужно будет указать пустую строку в вашем контроллере:
function Ctrl($scope) {
$scope.items = ['', 'other'];
$scope.selection = $scope.items[0];
}
Дополнительная информация приведена в API: http://docs.angularjs.org/api/ng.directive:ngSwitch
Кроме того, здесь приведена рабочая версия вашего кода: http://jsfiddle.net/upPgU/
Ответ 2
<div ng-switch on="foo || 'null'">
<span ng-switch-when="null">This string is empty</span>
<span ng-switch-default>This string is not empty</span>
</div>
Ответ 3
Определенный обман Angular.js ng-switch --- тестирование, если значение пусто или undefined.
Принятый ответ тоже не идеален. В моем таком скромном мнении наиболее изящное и ясное решение имеет наименьшее преимущество.
<div ng-switch="!!selection">
<div ng-switch-when="false">Empty, Null or undefined</div>
<div ng-switch-when="true">The string is not empty</div>
</div>