Javascript 消除角度材质md选择打断选项
我正在做一个指令,根据用户添加内容的次数,转包内容的次数未知Javascript 消除角度材质md选择打断选项,javascript,angularjs,angular-material,directive,Javascript,Angularjs,Angular Material,Directive,我正在做一个指令,根据用户添加内容的次数,转包内容的次数未知 <loop> <md-content layout="column" layout-padding> <h2>Row</h2> <md-input-container flex class="md-block"> <label>Input</label> <input n
<loop>
<md-content layout="column" layout-padding>
<h2>Row</h2>
<md-input-container flex class="md-block">
<label>Input</label>
<input ng-model="item.input">
</md-input-container>
<md-input-container flex class="md-block">
<label>Select</label>
<md-select ng-model="item.select">
<md-option ng-repeat="option in options">{{option}}</md-option>
</md-select>
</md-input-container>
</md-content>
</loop>
因此,首先我转置并用转置后的克隆替换模板中的占位符,然后编译模板。当我编译md时,选择中断。我想是因为它已经被编译过了。我无法在编译后替换占位符,因为此时ng repeat已编译且未找到占位符
。我已经尽可能地简化了代码
是否有其他方法可以实现此结果,或者是否有一些方法可以更改,以使md select不会中断。该示例使用md select,但也有其他无法使用的自定义指令。我想也是这个原因
<div ng-repeat="item in items">
<placeholder></placeholder>
</div>
<button ng-click="addItem()">Add item</button>
$templateRequest('template.html').then(function(html) {
var template = angular.element(html);
transclude(scope, function(row) {
template.find('placeholder').replaceWith(row);
$compile(template)(scope, function(clonedTemplate){
element.append(clonedTemplate);
});
});
});