在角度4编译之前操纵属性

时间:2017-04-28 07:09:22

标签: angular

我正在使用angular4重写一个库(由我在angular1.x中开发)。 在那个库中,我曾经将包装指令中的属性复制到内部html元素中。 例如<gn-input component.ng-model="somevar"></gn-input>

gn-Input指令的Html模板有<input class="component" type="text" />

在gn-input的编译函数中,我习惯读取gn-input元素上的所有属性,并将它们复制到input.component(带有组件类)标记。这给了我灵活性,因为我使用的是继承范围(范围:true)

----让它更清晰 例如,还有一个指令,我开发了

<gn-address country.ng-model="countryField" state.ng-model="stateField"></gn-address>

在gn-address的模板中,有两个输入(实际是下拉列表,但为简单起见假设输入)<input class='country' type="text" /> and <input class='state' type="text" />

在gn-address的编译函数中,我用来读取gn-address元素的所有属性,并在类的各个输入上setAttribute它们。

这种方法节省了我很多努力来支持内部元素支持的所有指令,而包装器实际上是一个包装器。

我非常习惯angular1和它的灵活性,我发现很难在angular4中做同样的事情,保持库AOT兼容。

0 个答案:

没有答案