Angular-formly:为什么指令的行为与类型不同?

时间:2016-01-07 16:36:30

标签: javascript angularjs angular-formly

我有两个输入字段,都是由同一个模板生成的。我正在设置

...    
templateOptions: {
  ...
  required: true
}

使用formlyConfig.setType注册了一个输入字段 另一个使用指令。我创建了一个JS Bin here

只有第一个获得必需属性,第二个不是。在docs的自定义模板(控制器选项)中,它说:

  

使您能够向类型添加自定义行为,而无需制作完整的指令(如果您愿意,可以改为使用指令。)

我做错了什么?

1 个答案:

答案 0 :(得分:3)

第二个例子中的问题是,当角度形式处理带有模板的选项时,所有角度形式都看到:<plain-text>用于模板。因此,它不知道放置required属性的元素。 angular-formly只会将这些属性附加到对其有ng-model的元素,因为这些元素是该属性有意义的唯一元素。

同样,这里的关键是在处理模板时(在编译之前)以角度形式看到的。指令编译的内容无关紧要。所以,是的,您可以使用自己的指令,但如果您想利用角度形式的功能,则需要使用ng-model控制器(如this example中使用的指令)。

祝你好运!