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

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

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

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

【问题讨论】:

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

标签: jquery angularjs angularjs-directive angularjs-scope angular-ui-router


【解决方案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
    });
    

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-03
      • 2014-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-15
      相关资源
      最近更新 更多