ng-include中使用的指令不起作用

时间:2015-03-17 17:20:55

标签: javascript angularjs angularjs-directive angularjs-ng-include

我有以下自定义指令。

var fancySelectDirective = pluginDirecitvesModule.directive("custom-select",function(){
         return { 
           restrict: 'C',
            link: function (scope, element, attrs) {
                  element.fancySelect();
            }
        }
     });

该指令用于模板。当我使用ng-include包含此模板时,该指令不起作用,即不调用链接函数(我尝试在控制台中调试)。但是当我直接在页面中使用此模板时,该指令有效。我无法找到发生此问题的原因。

我使用ng-include如下:

<div id="main_wrapper" ng-include="template.html"></div>

该指令在模板中使用如下:

<select class="custom-select">

1 个答案:

答案 0 :(得分:3)

这只是一个错字customSelect而不是custom-select

指令应声明为骆驼案例&amp;大写字母将被- +小写字母替换,例如。 customSelect将在html上写为custom-select

<强>代码

var fancySelectDirective = pluginDirecitvesModule.directive("customSelect", function() {
    return {
        restrict: 'C',
        link: function(scope, element, attrs) {
            element.fancySelect();
        }
    }
});

希望这可以帮助你,谢谢。