指令选择器不匹配动态的(结合的)类名或属性
问题描述:
我建立一个动态的形式跟随cookbook documentation指令选择器不匹配动态的(结合的)类名或属性
此外,我有选择input[type=signature]
一个指令。
如果我在dynamic-form-question.component.ts
使用:
<input *ngSwitchCase="'signature'"
[id]="question.attribs.name"
[formControlName]="question.attribs.name"
type="signature"
class="signature" />
我的指令相匹配。
但是,如果我用
<input *ngSwitchDefault
class="form-control"
[formControlName]="question.attribs.name"
[id]="question.attribs.name"
[ngClass]="question.attribs.class"
[placeholder]="question.attribs.placeholder"
[type]="question.attribs.type" />
其中type.attribute
被绑定,就没有骰子。
同样,我尝试了选择器input.signature
和input.signature, input[type=signature]
,但如果绑定了类或类型属性,它们也不起作用。
这是不支持的,我需要做别的事情来获得这个功能吗?
答
指令选择器必须是静态元素名称,属性或类。 他们需要静态添加组件模板。 Angular2不考虑以任何方式动态添加的所有内容。
我所知道的唯一的解决方法是在运行时创建组件(静态元素的名称,属性或类)为能与他们创建的指令和管道 - 在Equivalent of $compile in Angular 2
@jonrsharpe感谢编辑喜欢解释! –