angularjs局部视图内部的javascript无法正常工作?

这里主要是避免在index.html中加载所有JavaScript

例如)我有日期选择器的局部视图。 初始化将在局部视图侧进行。

 $(function() { $('.date-pick').datePicker(); });  

当通过路由器加载局部视图时,上面提到的脚本将不会被执行。 如何在angularjs局部视图中执行这些内部javascript?

Angular解析DOM,所以如果你把一个脚本标签放在里面,这显然是行不通的。 您应该为日期选择器创建一个指令,并在部分视图中使用该指令,如

。 或者你可以在控制器中添加这段JavaScript,但我不推荐它。 一旦习惯了,创建指令非常容易。 您的日期选择器可能已作为指令使用。 在Google上进行搜索。

谢谢Erik Duindam。

创建angularjs指令,如下所示

 // Directive for jQuery datepicker intialization app.directive('jqueryDatepicker', function () { return { restrict: 'A', link: function (scope, element, attr) { $('.date-pick').datePicker(); } } }); 

在部分视图html文件中我使用了created指令

  

现在,jQuery日期选择器在局部视图中初始化。 工作得很好!