我有以下指令:
mod.directive('uiSearchInput', function () {
return {
restrict: 'A',
template:
'<div class="ui-search-input">' +
'<i class="i i-search ui-search-input__icon"></i><div ng-transclude class="ui-search-input__field"></div>' +
'</div>',
transclude: 'element',
replace: true
};
});
我想这样使用:
<input type="text" placeholder="Search internal tags"
ui-search-input
ng:model="tagQuery"
ng:change="showCandidateTags()">
transclude 成功工作,但 Angular 最终将我的原始input
元素的属性放在root
模板的元素以及transcludedinput
元素上。看这个截图:
请注意根元素div
和嵌套input
元素如何都有一个ngModel
集合以及其他属性?
这种重复似乎导致我的应用程序出现问题。有可能完全避免这种情况吗?