我的组件看起来像这样:
<text-field name=myusername>Username</text-field>
我想将“用户名”放在输入的占位符属性中,有点像这样:
<input name={{name}} placeholder="{{ng-content}}">
当然,上面的方法不起作用,但我想知道是否有办法将ng-content放在属性中?
这是我的测试人员: http://plnkr.co/edit/gk0Y6IQGXyk4gJz5EjV4?p=preview
答案 0 :(得分:3)
当然有一些解决方法,比如我在改编你的plnkr时创建的那个:http://plnkr.co/edit/c7XEgIDiFchjMjzVmyBF?p=preview
<span style="display: none;" #text><ng-content></ng-content></span>
<input name={{name}} placeholder="{{text.innerHTML}}">
使用隐藏的范围来包含内容,并将其用作占位符的值。
答案 1 :(得分:2)
不,那不行。显示内容的唯一方法是使用:
<ng-content></ng-content>
您正在尝试使用其他类型的@Input
,并且在语义上保持一致,不支持获得此类“输入”。只需在组件中使用属性和@Input