大規模なアプリケーションでは、index.html にロードせずに、モジュール、コントローラー、サービスを必要なときにいつでも遅延ロードするにはどうすればよいでしょうか。ここでは、index.html ではなく、関連するテンプレート html に js 全体をロードすることを参照しています。(モジュール、複数のコントローラー、サービス、特定の機能のディレクティブ、または複数のコントローラーまたはサービスを持つ個々のjsファイルを持つ異なるjsである可能性があります)
RequireJs を使用したくありません。ただし、角度自体の中で解決策を探しています。
angular.module( 'my-second-module', ['ui.router'])
.config(function config($stateProvider) {
$stateProvider
.state('mainscreen', {
url: "/mainscreen",
templateUrl: "app/MyMain.tpl.html"
})
.state('mainscreen.sub', {
url: "/sub",
controller: 'subCtrl',
templateUrl: "app/sub.tpl.html"
})
})
.controller( 'subCtrl', function contractCtrl
($scope,$http,$route,$location) {
})
.controller( 'subTwoCtrl', function newContractCtrl($scope,someService,$http,$templateCache) {
.filter('myTypeFilter',function(){
return function (input,value){
return 'Normal';
};
})
.service('newService', function () {
var selectedContract = [];
var hotelObject=[{}];
return {
notes:function () {
},
addNote:function (noteTitle) {
}
};
})
.directive('autocomplete', function($parse) {
return function(scope, element, attrs) {
var setSelection = $parse(attrs.selection).assign;
scope.$watch(attrs.autocomplete, function(value) {
element.autocomplete({
source: value,
select: function(event, ui) {
setSelection(scope, ui.item.value);
scope.$apply();
}
});
});
};
})
.factory('restService', function(commonService) {
return {
setReturnMessage: function(res) {
};
})
});