JS Scripts在angular指令的模板中不起作用

时间:2016-01-20 11:27:32

标签: javascript angularjs node.js

我有指令

的文件

(function (angular) {
    'use strict';

    function digest(factory) {
        var directive = {
            restrict: 'E',
            templateUrl: '/js/app/digest/templates/digest.template.html',
            scope: true,
            replace: true,
            controller: [
                '$scope', '$http',
                function ($scope, $http) {
....
                }
            ]
        };
        return directive;
    }

digest.$inject = ['digest.factory'];
    angular.module('news').directive('maindigest', digest);
})(angular);

模板

<div>
<input id="datepicker"/>

<script>
      $("#datepicker").kendoDatePicker();
</script>
</div>

Index.html是定义该指令的地方

<script src="/vendor/bower_components/angular/angular.js"></script>
    <script src="/js/app/digest/digest.js"></script>
    <script src="/js/app/digest/digest.directive.js"></script>
    <script src="/js/app/digest/digest.factory.js"></script>

    <link href="/vendor/bower_components/kendo-ui/styles/kendo.common.min.css" rel="stylesheet">
    <link href="/vendor/bower_components/kendo-ui/styles/kendo.default.min.css" rel="stylesheet">
    <script src="/vendor/bower_components/kendo-ui/js/jquery.min.js"></script>
    <script src="/vendor/bower_components/kendo-ui/js/kendo.all.min.js"></script>
</head>
<body>
<maindigest></maindigest>
...
// in here js scripts work
//<input id="datepicker"/>
//<script>
      //$("#datepicker").kendoDatePicker();
//</script>
...

有人可以帮助我,为什么有些js脚本不能用于指令模板。 我的意见是js函数在指令模板中不存在,虽然在index.html中可以正常

1 个答案:

答案 0 :(得分:0)

我认为您需要在脚本标记中添加type = ng-template。

或者可以在你的指令中添加kendo-date-picker属性。