Попытка реализовать ленивую загрузку с помощью requirejs. Все в порядке, когда я не использую диаграммы. Но когда я хочу использовать диаграммы (угловые диаграммы), мне это не удастся! Использование chart.js с угловая диаграмма.
Вот main.js:
require.config({
baseUrl: "http://localhost/ums/angular/js",
paths: {
'angular': 'lib/angular.min',
'ngRoute': 'lib/angular-route.min',
'flash': 'lib/angular-flash',
'angular-loading-bar': 'lib/loading-bar.min',
'ngAnimate': 'lib/angular-animate.min',
'ui.bootstrap': 'lib/ui-bootstrap-tpls-0.12.0',
'uniqueField': 'admin/directives/angular-unique',
'input_match': 'admin/directives/angular-input-match',
'uniqueEdit': 'admin/directives/angular-unique-edit',
'angularAMD': 'lib/angularAMD.min',
'chart.js': 'lib/Chart.min',
'angular-chart':'lib/angular-chart.min',
'app': 'admin/app',
},
waitSeconds: 0,
shim: {
'angular': { exports: 'angular'},
'angularAMD': { deps: ['angular']},
'angular-chart': { deps: ['angular','chart.js']},
'ngRoute':{ deps: ['angular']},
'angular-loading-bar':{ deps:['angular'] },
'ngAnimate': { deps:['angular'] } ,
'ui.bootstrap': {deps: ['angular'] },
'uniqueField': {deps: ['angular'] },
'input_match': {deps: ['angular'] },
'uniqueEdit': {deps: ['angular'] },
'flash': {deps: ['angular'] },
},
deps: ['app']
});
Вот app.js:
var base_url="http://localhost/ums/";
define(['angularAMD', 'ngRoute','flash','angular-loading-bar','ngAnimate','uniqueField','input_match','angular-chart'], function (angularAMD) {
var app = angular.module('angularapp', ['ngRoute','flash','angular-loading-bar','ngAnimate','uniqueField','input_match','angular-chart']);
app.config(['$routeProvider', function($routeProvider){
$routeProvider
.when('/dashboard', angularAMD.route({
title : 'Dashboard',
controller : 'dashboardCtrl',
templateUrl : base_url+'angular/partials/admin/dashboard.php',
controllerUrl: base_url+'angular/js/admin/controllers/dashboardCtrl.js'
}))
//.......................all routing ............//
.otherwise({
redirectTo : '/dashboard'
});
}]);
app.run(['$rootScope', '$route', function($rootScope, $route) {
$rootScope.$on('$routeChangeSuccess', function() {
document.title = $route.current.title;
});
}]);
// Bootstrap Angular when DOM is ready
return angularAMD.bootstrap(app);
});
Как реализовать зависимость между ними? Есть предложения? есть примеры?
chart.js
в блоке define() app.js и удалить или увеличить waitSecond: от 0 до 60 или что-то в этом роде. - person Linh Pham   schedule 10.07.2015waitSecond
Настройка времени ожидания для requireJS для ожидания загрузки модуля JS. И если есть какой-либо модуль, для загрузки требуется больше 0. Это будет считаться неудачным. - person Linh Pham   schedule 10.07.2015main.js
, это поможет выйти из системы из-за ошибки requireJS в консоли браузера. - person Linh Pham   schedule 10.07.2015chart.js
. Итак, как я могу справиться с этим. Поскольку консоль браузера говоритchart.js not found
, даже имя моего файла — Chart.min.js. - person VBMali   schedule 10.07.2015'chart.js'
в блок define ()app.js
? - person Linh Pham   schedule 10.07.2015angular-chart
И я уже упоминал вshim
, чтоangular-chart
зависит отchart.js
. Так что мне нужно также определить chart.js в блоке определения app.js. Нет, я так думаю.! - person VBMali   schedule 10.07.2015.js
, потому что это может каким-то образом сбить с толку requireJS (я никогда не знаю и не слышал, но лучше не использовать какой-либо чувствительный символ, например:'\'
) - person Linh Pham   schedule 10.07.2015