如何为带有 class m-menu__toggle 的元素定义 angularjs 指令?
How can I define an angularjs directive for elements with the class m-menu__toggle?
我正在基于 metronic 模板开发一个项目,该模板具有 class m-menu__toggle 的元素
由于连字符和下划线,我不确定该指令的名称。
以下无效:
import angular from 'angular';
const module = angular.module('app.directives.menuToggle', []);
module.directive('m-menu__toggle', function() {
return {
restrict: 'C',
link: function(scope, elem, attrs) {
elem.css('color', 'red');
elem.css('border', '1px solid red');
elem.css('cursor', 'help');
}
};
});
export default module.name;
你的指令名称将是 'mMenu__toggle' 因为 camelCase 将被转换为连字符后跟小写
您应该将指令命名为 mMenuToggle
。请参阅下面的工作片段。
(function() {
angular
.module('app', [])
.directive('mMenuToggle', fun);
function fun() {
return {
restrict: 'C',
link: function(scope, elem, attrs) {
elem.css('color', 'red');
elem.css('border', '1px solid red');
elem.css('cursor', 'help');
}
}
}
})();
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="app">
<span class="m-menu__toggle"> Element </span>
</div>
在这里查看原因:Angular directive name: only lower case letters allowed?
我正在基于 metronic 模板开发一个项目,该模板具有 class m-menu__toggle 的元素 由于连字符和下划线,我不确定该指令的名称。
以下无效:
import angular from 'angular';
const module = angular.module('app.directives.menuToggle', []);
module.directive('m-menu__toggle', function() {
return {
restrict: 'C',
link: function(scope, elem, attrs) {
elem.css('color', 'red');
elem.css('border', '1px solid red');
elem.css('cursor', 'help');
}
};
});
export default module.name;
你的指令名称将是 'mMenu__toggle' 因为 camelCase 将被转换为连字符后跟小写
您应该将指令命名为 mMenuToggle
。请参阅下面的工作片段。
(function() {
angular
.module('app', [])
.directive('mMenuToggle', fun);
function fun() {
return {
restrict: 'C',
link: function(scope, elem, attrs) {
elem.css('color', 'red');
elem.css('border', '1px solid red');
elem.css('cursor', 'help');
}
}
}
})();
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="app">
<span class="m-menu__toggle"> Element </span>
</div>
在这里查看原因:Angular directive name: only lower case letters allowed?