Angularjs 角度指令、控制器和作用域属性
我的指令有此代码(基于)Angularjs 角度指令、控制器和作用域属性,angularjs,angularjs-directive,Angularjs,Angularjs Directive,我的指令有此代码(基于) angular.module('myApp') .directive('myButton',function(){ 变量控制器=函数(){ var vm=这个; console.log(“label”,vm.saveLabel); }; 返回{ 替换:正确, 限制:'E', 范围:{ 取消标签:'@', saveLabel:“@” }, 模板:“标签:{{vm.saveLabel}”, 控制器:控制器, controllerAs:'vm', bindToControll
angular.module('myApp')
.directive('myButton',function(){
变量控制器=函数(){
var vm=这个;
console.log(“label”,vm.saveLabel);
};
返回{
替换:正确,
限制:'E',
范围:{
取消标签:'@',
saveLabel:“@”
},
模板:“标签:{{vm.saveLabel}”,
控制器:控制器,
controllerAs:'vm',
bindToController:true
};
});
这个html
<my-button saveLabel="Save"></my-button>
但是,saveLabel值始终未定义
我看不出我错过了什么。我知道这很愚蠢 变化
<my-button saveLabel="Save"></my-button>
作为
权利来源:
注意:指令范围选项中的这些=attr
属性与指令名称一样被规范化。要绑定到中的属性,请执行以下操作:
,您需要指定
=bindToThis
改变
作为
权利来源:
注意:指令范围选项中的这些=attr
属性与指令名称一样被规范化。要绑定到中的属性,请执行以下操作:
,您需要指定
=bindToThis
工作演示:
像这样使用它:
<my-button save-label="Save"></my-button>
<!-- Or you can use like -->
<my-button data-save-label="Save"></my-button>
<!--But not like the following -->
<!-- <my-button savelLabel="Save"></my-button> -->
Angularjs使用规范化:
Angular规范化元素的标记和属性名称,以确定哪些元素与哪些指令匹配。我们通常通过其区分大小写的规范化名称(例如ngModel)引用指令。但是,由于HTML不区分大小写,我们在DOM中以小写形式引用指令,通常在DOM元素(例如ng模型)上使用破折号分隔的属性
规范化过程如下所示:
1。从元素/属性前面剥离x-和数据
2.将以:、-或_-分隔的名称转换为camelCase
工作演示:
像这样使用它:
<my-button save-label="Save"></my-button>
<!-- Or you can use like -->
<my-button data-save-label="Save"></my-button>
<!--But not like the following -->
<!-- <my-button savelLabel="Save"></my-button> -->
Angularjs使用规范化:
Angular规范化元素的标记和属性名称,以确定哪些元素与哪些指令匹配。我们通常通过其区分大小写的规范化名称(例如ngModel)引用指令。但是,由于HTML不区分大小写,我们在DOM中以小写形式引用指令,通常在DOM元素(例如ng模型)上使用破折号分隔的属性
规范化过程如下所示:
1。从元素/属性前面剥离x-和数据
2.将以:、-或_-分隔的名称转换为camelCase
就在我面前。我设法规范化了元素名,但忘记了属性名。谢谢感觉自己很愚蠢,但是谢谢;)就在我面前。我设法规范化了元素名,但忘记了属性名。谢谢感觉自己很愚蠢,但是谢谢;)
<my-button save-label="Save"></my-button>
<!-- Or you can use like -->
<my-button data-save-label="Save"></my-button>
<!--But not like the following -->
<!-- <my-button savelLabel="Save"></my-button> -->