Have you looked at Vojta Jina's example:
https://github.com/vojtajina/ng-1.x-async-hack
There are other decent solutions on how to achieve lazy loading in angular
1.x but I liked Vojta's solution the best because the angular controllers /
services etc still look like a regular angular project.
Regards,
Magnus
On Monday, March 31, 2014 8:26:05 PM UTC-4, Andrew wrote:
>
> In a large scale application, How do we lazy load modules, controllers,
> services whenever needed without loading those in the index.html. Here I'm
> referring to load the entire js in the relevant template html and not in
> the index.html. (It could be different js which has Module, multiple
> controllers, services, directives for a given functionality or individual
> js files which has multiple controllers or services)
>
> I do not want to use RequireJs. However, I'm looking for a solution within
> angular itself.
>
> 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) {};})
>
>
--
You received this message because you are subscribed to the Google Groups
"AngularJS" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/angular.
For more options, visit https://groups.google.com/d/optout.