123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- /**
- * Created by jiaoyumin on 16/9/28.
- */
- (function () {
- // Setting up route
- angular.module('push').factory('LoadJsService', LoadJsService);
- LoadJsService.$inject = ['JS_REQUIRE', '$ocLazyLoad', '$q'];
- function LoadJsService(jsRequires, $ocLL, $q) {
- return {
- loadSequence: function () {
- var _args = arguments;
- var viewArgs = repeatArgs(_args[0]);
- //先匹配模块的,没有再匹配单文件的
- if (viewArgs) {
- _args = viewArgs
- } else {
- //console.log("没有找到模块?")
- }
- function repeatArgs(name) {
- return jsRequires.ViewArgs[name];
- }
- function promiseThen(_arg) {
- if (typeof _arg == 'function')
- return promise.then(_arg);
- else
- return promise.then(function () {
- var nowLoad = requiredData(_arg);
- if (!nowLoad)
- return console.log('找不到文件 [' + _arg + ']');
- return $ocLL.load(nowLoad);
- });
- }
- function requiredData(name) {
- if (jsRequires.modules)
- for (var m in jsRequires.modules)
- if (jsRequires.modules[m].name && jsRequires.modules[m].name === name)
- return jsRequires.modules[m];
- return jsRequires.scripts && jsRequires.scripts[name];
- }
- var promise = $q.when(1);
- for (var i = 0, len = _args.length; i < len; i++) {
- promise = promiseThen(_args[i]);
- }
- return promise;
- }
- }
- }
- }());
|