Javascript AngularJS:在指令中修改转置的属性键
鉴于:Javascript AngularJS:在指令中修改转置的属性键,javascript,angularjs,replace,directive,transclusion,Javascript,Angularjs,Replace,Directive,Transclusion,鉴于: 以及该指令: <radio radio-name="login"></radio> app.directive('radio',function(){ 返回{ 限制:'E', 替换:正确, 是的, 范围:{ radioName:“@” }, 模板:“”, 链接:函数(…){} } }); 我希望生成的标记为: app.directive('radio', function () { return { restrict: 'E',
以及该指令:
<radio radio-name="login"></radio>
app.directive('radio',function(){
返回{
限制:'E',
替换:正确,
是的,
范围:{
radioName:“@”
},
模板:“”,
链接:函数(…){}
}
});
我希望生成的标记为:
app.directive('radio', function () {
return {
restrict: 'E',
replace: true,
transclude: true,
scope: {
radioName: '@'
},
template: '<label></label>',
link: function ( ... ) {}
}
});
而不是当前输出的内容:
<label data-radio-name="login" ...>
我希望在初始标记上保留“radio name”,这样您就可以知道它是一个自定义指令,但我希望生成的transcluded/replacement具有语义数据属性“data radio name”。谢谢。将
radioName
模式从@
更改为=
并将模板设置为空:
<label radio-name="login" ...>
模板:“”
比如:
template: '<label data-radio-name=""></label>'
指令('radio',函数(){
返回{
限制:'E',
替换:正确,
是的,
范围:{
radioName:“=”
},
模板:“”,
链接:函数(){}
}
});
输出:
.directive('radio', function () {
return {
restrict: 'E',
replace: true,
transclude: true,
scope: {
radioName: '='
},
template: '<label data-radio-name=""></label>',
link: function ( ) {}
}
});
演示好的,很好,效果很好!如果我不想保留属性,该怎么办?所以它会输出,而不是?
<label data-radio-name="login"></label>