13

テーブル セル内に、以下の構造を使用して、ng-repeat を使用して入力されたいくつかの項目をリストしています。ただし、一部のエントリでは、「user.favcolor」などのプロパティは空白です。その場合、「お気に入りの色:」などのテキストを非表示にして、「お気に入りの色:」があり、その横に値がない行にならないようにする最も簡単な方法は何ですか?

        <table>
            <thead>
                <tr>
                    <th>Price</th>
                    <th>Plan Contents</th>
                </tr>
            </thead>
            <tbody>
                <tr ng-repeat="tip in tips">
                    <td>{{tip.priceMonthly}}</td>
                    <td><span>Name: {{user.name}}</span>
                        <span>ID: {{user.id}}</span>
                        <span>Favorite color: {{user.favcolor}}</span>
                    </td>
                </tr>
            </tbody>
        </table>
4

1 に答える 1

36

ng-showこれには次のディレクティブを使用できます。

<span ng-show="user.favcolor">Favorite color: {{user.favcolor}}</span>

ng-show、式が と評価された場合にのみ要素が表示されるように機能しtrueます。ここで空の文字列を指定するとfalse、要素全体が非表示になると評価されます。

または、デフォルト値を指定することもできます。

<span>Favorite color: {{user.favcolor || "Not specified" }}</span>

この場合、が aにuser.favcolor評価されると、代わりに出力されます。falseNot specified

于 2013-09-24T23:10:41.673 に答える