* ngIf window.location.href.indexOf不起作用

时间:2017-03-29 13:29:26

标签: javascript html angular

我只需要在位置合适的情况下显示一个元素,如果不是,则显示它。

这不起作用:

<div *ngIf="!accessTrue() && window.location.href.indexOf('something')" > -1)>
    CODE
</div>

2 个答案:

答案 0 :(得分:4)

您无法访问模板中的window对象。 但您可以在组件中定义一个getter:

get hasSomething(){
    return window.location.href.indexOf('something') > -1
}

然后:

<div *ngIf="!accessTrue() && hasSomething">
    CODE
</div>

请注意,如果可以通过它访问参数,则使用ActivatedRoute可能会更清晰。

答案 1 :(得分:1)

在HTML中:

 <div *ngIf="hasAccess"> CODE </div>

角度分量:

constructor(){
        this.hasAccess = window.location.href.indexOf('something') > -1 && !this.accessTrue();
}