问题标签 [oclazyload]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
5734 浏览

angularjs - 使用 ui-router 和 ocLazyLoad 加载控制器并将部分设置为它

我是一个完整的 Angular 菜鸟,并试图快速做一些花哨的事情,所以如果这是一个愚蠢的问题,请原谅我。

我创建了一个使用路由的网站,并且我使用 ui-router 进行路由,而不是标准的 Angular 路由器。理论还是一样的——我的网站根目录中有一个 index.html 页面,它是“主”或“主机”页面,而作为部分的 loginView.htm 存在于单独的目录中。

项目的 mainController 加载在 index.html 页面中。引用此控制器不会导致错误或问题。

为了保持代码的可管理性和小型化,我想做的是在我加载部分页面时使用自定义控制器来延迟加载部分页面,然后将该部分页面与新加载的控制器相关联。有道理,对吧?我不想默认加载所有控制器,因为那是浪费时间和空间。

所以我的结构看起来像这样(如果它对任何人都很重要):

这是我的登录控制器代码。出于测试目的,我使 mainController 代码完全匹配。

最后,这是我的路由代码:

现在 - 如果我删除整个“解决”部分,并将控制器更改为“mainController”,一切正常。页面加载,按钮工作,它们调用“changeLanguage”功能,一切都很棒。

但我希望“changeLanguage”功能驻留在 loginController 中,因为这是唯一使用它的页面。因此,当代码看起来像上面那样时,会触发错误(“Uncaught Error: [$injector:modulerr]”)并且部分页面无法加载。

我不明白我做错了什么,也没有通过谷歌找到我需要的东西(也许我只是不知道要问的正确问题)。

帮助?

0 投票
2 回答
1115 浏览

javascript - oc.lazyload 不适用于 ui-router,js 已加载但控制器未初始化

我正在尝试将ui-router与lazyload一起使用,从chrome我可以看到已加载所需的js,但角度会引发错误。

从错误中我可以看出控制器未初始化,附加了路由器代码:

我错过了什么吗?

0 投票
1 回答
1707 浏览

angularjs - Unknown provider $ocLazyLoad when using with TypeScript

I am trying to use $ocLazyLoad inside of Angular.js with TypeScript. However I keep getting a Unknown provider error. I am including it in my primary app:

index.module.ts

The error come from when I try to include it in my RouterConfig:

index.route.ts

The really strange part is that I can include $ocLazyLoadProvider without any problems. This is a very bare-bones setup from Yeoman using gulp, typescript, and ui-router.

0 投票
1 回答
716 浏览

karma-runner - 业力测试错误:oc.lazyLoad

我在测试时在 Karma 中遇到此错误

错误:[$injector:modulerr] 无法实例化模块 *** 由于:错误:[$injector:modulerr] 无法实例化模块 oc.lazyLoad 由于:在引导期间找不到模块,无法初始化 ocLazyLoad

这是我的角度初始化:

你能帮我解决这个问题吗

0 投票
1 回答
339 浏览

javascript - Angular - 加载所有 JS 时调用函数

我想在加载所有文件(JS)时调用一个函数(因为我想调用这些文件之一中的函数)。我怎么做?

来源:Metronic Template AngularJS 版本

0 投票
1 回答
1178 浏览

angularjs - 使用 Angular ui 路由和 ocLazyLoad 加载模块和工厂文件

i',使用带有 ocLazyLoad 的角度 ui 路由根据选择的 stat 加载附录文件,如以下代码所示

我的问题是:

当我加载新状态并单击刷新时,工厂未初始化-我认为这是因为文件在初始化控制器之前未完全加载-

我还尝试在同一个 ocLazyLoad 函数中合并所有文件并使用serie : true但不工作

是否正确使用 ocLazyLoad

我有以下模块

这是路由

0 投票
2 回答
2916 浏览

angularjs - ocLazyLoad 中的模块如何加载、并行或按顺序加载?

我正在使用ocLazyLoad库来实现项目中所有依赖项的延迟加载。我知道默认情况下文件是并行加载的,为了使其按顺序加载,我应该使用serie:true https://github.com/ocombe/ocLazyLoad/issues/47

这个线程我了解到我可以串联加载模块:

是的,文件是并行加载的,如果您想同时加载多个模块并且它们需要彼此,您需要在不同的对象参数中定义它们:

现在我尝试在我的应用程序中加载 FullCalendar 所需的所有依赖项,这是我的 ocLazyLoad 配置文件:

这是我的路由器的一部分:

尽管'momentjs'首先定义了该模块,但我仍然收到错误消息:Uncaught ReferenceError: moment is not defined

如果我放入moment.js模块'ui.calendar'它可以工作,但我想单独加载它,因为我的应用程序中有另一个视图,我只使用 moment.js 并且不需要所有依赖项。

所以,我的问题是,如何使模块(不是文件)加载到系列中,而不是文件中,或者如果它们已经加载到系列中,什么会导致我的错误?

先感谢您。

0 投票
1 回答
421 浏览

angularjs - 如何在 Angular ocLazyLoad 最新版本中配置 jsLoader。

早期版本的 angular oclazyload 可以选择配置 asyncLoader 以使用 webpack 包加载器作为其脚本加载器。

如何使用最新版本的 angular oclazyload 实现相同的效果。替换也没有成功asyncLoaderjsLoader

0 投票
1 回答
1591 浏览

angularjs - 在使用 OcLazyLoad 加载控制器之前解决资源调用

我需要使用 $resource 提供程序对我的网络服务执行 http 调用。我想先解析来自 http 调用的数据,然后将此结果注入控制器。考虑到 OcLazyLoad 我刚刚写了这段代码。在我看来,它应该:

  • 首次加载服务;
  • 进行http调用;
  • 当 promise 解决后,加载控制器

    /li>

这是服务

一些建议?

0 投票
3 回答
1176 浏览

javascript - 使用 ocLazyLoad 时注入延迟加载的 AngularJS 控制器

我开始使用 ocLazyload 来延迟加载我的一些 AngularJs 控制器。我已经用它和$routeProvider这样的

这很好用。

我有另一个路由定义,它resolve在加载控制器之前使用属性来解析几个项目。

现在我也想延迟加载这个控制器,我试过这样

在这种情况下页面会加载,但profileDataandcount不会被注入到控制器中。控制器定义如下。

在调试时,我意识到调用了getProfileandgetCount方法,但它是异步发生的,并且控制器也会延迟加载而不等待这些方法。如何同时注入和延迟加载?我可以使用承诺以任何方式解决这个问题吗?

我正在使用 AngularJS 1.3.10 和 ocLazyLoad 1.0.5 版本

getProfile功能参考