2016-10-31 119 views
1

对不起,如果这很简单,但只是不能解决这个问题... 在我的角度测试应用程序,我试图追加一个id作为我的html模板的一部分:Angular 2绑定:添加到Href

<a href="https://www.domainname.com/?q="+{{text.id}}>URL</a> 

不失败与错误(错误:未能执行的“元素”的setAttribute“),我不知道如何添加{{text.id}}这个网址... 待办事项我需要在我的组件中执行此操作,或者可以在html模板内以某种方式完成此操作?

顺便说一句。正如人们所期望的那样,这个工作得很好(但是这不是我想做的事情,我需要追加text.id到网址):

<a href="https://www.domainname.com/?q=">{{text.id}}</a> 

有什么建议?

回答

4

用途:

<a href="https://www.domainname.com/?q={{text.id}}">URL</a> 

说明:

的错误消息是误导。

当您使用{{ expression }}时,角度将评估expression并将其值置于{{}}所在的位置。所以你不需要+{{}}的结果与你一样。换句话说:

<a href="something="+{{ expression }}> WRONG </a> 

<a href="something={{ expression }}"> RIGHT </a> 
+0

感谢的约束,这个作品大加赞赏,这可能是首选的方法... – jjj

+0

我能做些什么,如果我想在一个事件(点击)=“isCollapsed {{data_time}} =!isCollapsed {{data_time}}” –

+0

@JayMomaya在一个事件中,你不需要使用'{{'或'}}'。试试:'(click)=“isCollapsed(data_time)”'。 – acdcjunior

1

或者,您可以使用[attr.href]="'https://www.domainname.com/?q=' + text.id"语法。

当你要绑定到像url: string = 'https://www.domainname.com'一个变量,然后由[attr.href]="url"