我写了一些指令,将模板应用于复选框和广播。但是它需要在元素中添加类或属性。
.directive('checkbox', function () {
return {
restrict: 'C',
link: function (scope, elem, attrs) {
elem.wrap('<span class="check"></span>');
elem.after('<span class="checkLtr"></span>');
}
};
})
如何在不向元素添加/更改元素,类或属性的情况下添加此模板?
答案 0 :(得分:1)
你可以让你的指令替换复选框元素,而不是
<input type="checkbox" class="checkbox">
你有
<my-checkbox />
你的指令代码看起来像
.directive('myCheckbox', function () {
return {
restrict: 'E',
template: '<span class="check"><input type="checkbox"></span><span class="checkLtr"></span>',
replace: true,
link: function (scope, elem, attrs) {
}
};
})
如果需要,可以使用隔离范围绑定“已检查”值并在链接函数中对其进行操作。