加载 angularjs 视图后加载 jquery 模块?

Posted

技术标签:

【中文标题】加载 angularjs 视图后加载 jquery 模块?【英文标题】:Load jquery module after an angularjs view has loaded? 【发布时间】:2017-01-04 19:10:41 【问题描述】:

在加载 angularjs 视图后如何加载 javascript 文件?

我想在视图上应用第三方脚本,但它仅在我重新加载整个页面时有效,而不是在调用视图时。

所以我认为 html 视图中引用的代码没有按正确的顺序处理。

【问题讨论】:

使用指令将 jQuery 内容连接到元素。如果需要,您可以将link 中的函数包装在$timeout() 中。这将确保 Angular 在您的 jQuery 内容之前处理完毕。 【参考方案1】:

您可以尝试使用像 https://oclazyload.readme.io/ 这样的延迟(延迟)加载模块 我用它来加载沉重的微型 mce(js lib + angulat 指令)

例如从 ctrl 加载

myApp.controller("MyCtrl", function($ocLazyLoad) 
  $ocLazyLoad.load('app/js/testModule.js');
);

【讨论】:

【参考方案2】:

要在 Angular 加载完成后强制代码运行,可以添加以下代码:

angular.element(document).ready(function () 
       //load jquery module here
);

您可以将“文档”替换为必须存在的任何元素。

【讨论】:

以上是关于加载 angularjs 视图后加载 jquery 模块?的主要内容,如果未能解决你的问题,请参考以下文章

viewdidappear 发生后加载 uitableview 数据?

jQuery:获取 .timeago() 以处理 DOM 就绪后加载的元素(Ajax)

在 ajax 调用后加载视图,CodeIgniter

在 adminlte-3 bootstrap-4 treeview 打开/隐藏页面加载后加载动态 AJAX 侧边栏菜单 jquery 不起作用

关于 tomcat配置多个host后加载缓慢

如何使用 asp.net core mvc 在引导模式中加载 AngularJS 代码