15

私は 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>

これについての助けをいただければ幸いです。

4

3 に答える 3

21
<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>
于 2014-04-01T13:54:55.267 に答える
10

コントローラーに空の文字列を含める必要があります。

function Ctrl($scope) {
  $scope.items = ['', 'other'];
  $scope.selection = $scope.items[0];
}

追加のリファレンスについては、API を参照してください: http://docs.angularjs.org/api/ng.directive:ngSwitch

また、コードの動作バージョンは次のとおりです: http://jsfiddle.net/upPgU/

于 2012-09-15T06:31:35.827 に答える
3

Angular.js ng-switchの明確な複製---value が空または 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>
于 2016-06-02T16:14:16.207 に答える