在角度 4 中有条件地设置属性

mac*_*jka 4 html typescript angular

我想设置元素的 href 属性取决于插值的元素内容。

<div>
    <ul class="contactnav">
        <li *ngFor="let contactItem of contactItems" >
            <a class="{{ contactItem.iconBootStrap }}"  href=" {{ contactItem.contactForm.indexOf('@') }} !== -1? 'mailto:{{ contactItem.contactForm }}' : '#'" data-rel="external">
                {{ contactItem.contactForm }}
            </a>           
        </li>
    </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

如果contactItem.contactForm 包含@ 否则为值'#' 设置,我应该如何在元素中定义条件以设置href 的值?

Gün*_*uer 5

您要求的是设置属性,而不是属性。

您可以使用

[href]="contactItem.contactForm.indexOf('@') !== -1 ? 'mailto: ' + contactItem.contactForm : '#'"
Run Code Online (Sandbox Code Playgroud)

对于条件属性绑定,请参阅如何在 Angular 2 中添加条件属性?