我应该使用哪种形式来表示这些属性? [ID] ="与连字符" [ID] ="'与连字符'" 只有一对双引号可以用连字符属性吗?或者我是否应该在单引号火灾中添加文字?
关于Angular 2。
答案 0 :(得分:1)
如果您传入属性,则使用单引号。例如,如果组件A具有@Input()bId并且组件B具有属性id,则可以像这样传递它:
<componentA [id]="bId"></componentA>
另一方面,如果要将字符串直接传递给componentA,可以使用嵌套引号:
<componentA [id]="'whatever string you want'"></componentA>
当谈到像img这样的html元素并且你在src中传递时它被视为一个字符串。
<img src="http://somesite.com/funnypic.png">
但是如果你想将一个变量传递给src属性,你可以使用字符串插值{{}}并传入一个在你的组件中设置的变量,如下所示:
<img src="{{aComponentVariable}}">
希望有所帮助。
答案 1 :(得分:1)
`[id]="with-hyphen" `
这是错误的。
当您将属性放在括号中时,您将绑定到您提供的变量,而在javascript中,变量不能有-
短划线。
而
id="with-hyphen"
这是对的,因为你没有绑定到一个变量,你宁可传递一个普通的字符串