试图更好地理解 ng-if

Trying to get a better understanding of ng-if

如果你看看我下面的小代码片段,我想做的应该很明显....不是每条记录都有 this 字段,所以在那些我不想隐藏它和标签的东西上。我这里的东西没用。

        <table id="tablepress-1" class="tablepress tablepress-id-1" ng-repeat="agent in vm.agents | orderBy: 'id'" border="0">
        <tbody class="row-hover">
            <tr class="row-1 odd">
                <td class="column-1"><a href="http://larosacre.com/?page_id=1121"><img src="images\{{agent.image}}" alt="" class="aligncenter size-thumbnail wp-image-1116" data-recalc-dims="1" /></a></td>
                <td class="column-2">
                    {{agent.name}}<br />
                    Phone: {{agent.phone}}<br />
                    <p ng-if="{{agent.email}} != ''">E-Mail: {{agent.email}}</p><br />
                    {{agent.bio}}
                </td>
            </tr>
        </tbody>
    </table>

我该如何处理?

谢谢,

新手

赋予 ngIf 指令的内容 将通过在当前 范围内进行评估来解释 [=] =34=]。也就是说,您不需要(事实上,您实际上不必)在这里使用{{...}}标记。

即简单地使用:

<p ng-if="agent.email != ''">E-Mail: {{agent.email}}</p>

... 会创造奇迹。虽然,因为,当 agent.email != '' 时,那么基本上,agent.emailtruth-y,仅在 中评估为 false boolean context 如果它是 undefined 或空(或 0,但我相信这不会发生在你的情况下)。

我想说的是,只需使用:

<p ng-if="agent.email">E-Mail: {{agent.email}}</p>

...一切顺利!