xml地图|网站地图|网站标签 [设为首页] [加入收藏]

皇家娱乐场AngularJS中的按需加载ocLazyLoad示例,

来源:http://www.ccidsi.com 作者:集成经验 人气:98 发布时间:2019-08-21
摘要:一、前言 AngularJS中的按需加载ocLazyLoad示例,angularjsoclazyload 一、前言 ocLoayLoad是AngularJS的模块按需加载器。一般在Mini项目里,第贰回加载页面就下载好全体的能源没有啥大标题。不过当

一、前言

AngularJS中的按需加载ocLazyLoad示例,angularjsoclazyload

一、前言

ocLoayLoad是AngularJS的模块按需加载器。一般在Mini项目里,第贰回加载页面就下载好全体的能源没有啥大标题。不过当大家的网址逐步壮大起来,那样子的加载计谋让网速起首化速度变得愈加慢,客户体验倒霉。二来,分模块加载易于团队同盟,减低代码争持。

二、按需加载的对象

梯次Controller模块、Directive模块、Server模块、template模板,其实这几个都以部分 .js文件也许 .html文件 。

三 、按需加载的风貌

1 路由加载(resolve/uiRouter)

基于uiRouter的resolve是在加载controller和template从前所推行的一名目多数操作,它援助大家开首化大家所要前往的那多少个视图。独有be solved(操作完结),controller才会被实例化。由此,大家能够在resolve步骤里面加载大家所急需的controller。

  $stateProvider
    .state('index', {
      url: '/',
      views: {
        'lazyLoadView': {
          templateUrl: 'partials/main.html',
          controller: 'AppCtrl'
        }  
      },
      resolve: {
        loadMyCtrl: ['$ocLazyLoad', function($ocLazyLoad){
          return $ocLazyLoad.load('js/AppCtrl.js')
        }]
      }
    })

里头,'js/AppCtrl.js'里面放着多个我们所急需的controller

angular.module('myApp')
.controller('AppCtrl', ['$scope', function($scope){
//...
}])

2 依赖加载

在依据项内部导入我们所要求的一文山会海模块(这里有一层'[ ]'符合哦)

angular.module('gridModule', [[
  'bower_components/angular-ui-grid/ui-grid.js',
  'bower_components/angular-ui-grid/ui-grid.css'
]]).controller('GridModuleCtrl', ['$scope', function($scope){
  //...
}])

3 Cotroller里动态加载

angular.module('myApp')
.controller('AppCtrl', ['$scope','$ocLazyLoad', function($scope, $ocLazyLoad){
  $scope.loadBootstrap = function(){
    $ocLazyLoad.load([
     'bower_components/bootstrap/dist/js/bootstrap.js',
     'bower_components/bootstrap/dist/css/bootstrap.css'
    ])
  }
  var unbind = $scope.$on('ocLazyLoad.fileLoaded', function(e, file){
    $scope.bootstrapLoaded = true;
     console.log('下载boot完成');
     unbind();
  })
}])

4 template满含加载(config)

怎么管理大家所加载的html模板里面嵌套的controller呢?这里供给oc-lazy-load指令和$ocLazyLoadProvider的布局

/*template A.html*/
<h1>hi i am hzp </h1>
  <div oc-lazy-load="gridModule">
    <div ng-controller="GridModuleCtrl">
      {{test}}<br/>
      <div ui-grid="gridOptions" class="gridStyle"></div>
    </div>
  </div>
</div>


  $ocLazyLoadProvider.config({
    modules: [{
      name: 'gridModule',
      files: [
        'js/gridModule.js'
      ]
    }]
  })

四、怎么样协会按需加载

分路由、按作用来区分、打包成不一致的多个或单个controller.directive.server模块

以上正是本文的全体内容,希望对我们的上学抱有协理,也意在大家多多扶助帮客之家。

一、前言 ocLoayLoad是AngularJS的模块按需加载器。一般在小型项目里,第贰次加载页面就下载...

 一、前言

ocLoayLoad是AngularJS的模块按需加载器。一般在Mini项目里,第一回加载页面就下载好全数的能源未有啥样大难点。不过当大家的网址慢慢壮大起来,那样子的加载战略让网速伊始化速度变得愈加慢,顾客体验不佳。二来,分模块加载易于团队合作,减低代码争执。

    ocLoayLoad是AngularJS的模块按需加载器。一般在Mini项目里,第4回加载页面就下载好全部的能源未有啥大难点。不过当我们的网址慢慢强大起来,那样子的加载计策让网速伊始化速度变得更为慢,客户体验不佳。二来,分模块加载易于团队同盟,减低代码争执。

二、按需加载的对象

 二、按需加载的靶子

逐个Controller模块、Directive模块、Server模块、template模板,其实那么些都是一些 .js文件或然 .html文件 。

    逐个Controller模块、Directive模块、Server模块、template模板,其实那个都以一对 .js文件或然 .html文件 。

三 、按需加载的场所

  三 、按需加载的景观

1 路由加载(resolve/uiRouter)

    1 路由加载(resolve/uiRouter)

基于uiRouter的resolve是在加载controller和template在此之前所实施的一几种操作,它补助大家初阶化大家所要前往的那个视图。只有be solved(操作实现),controller才会被实例化。由此,我们能够在resolve步骤里面加载大家所急需的controller。

      基于uiRouter的resolve是在加载controller和template从前所进行的一层层操作,它扶助大家开始化大家所要前往的那多少个视图。独有be solved(操作达成),controller才会被实例化。由此,大家得以在resolve步骤里面加载大家所供给的controller。

  $stateProvider
    .state('index', {
      url: '/',
      views: {
        'lazyLoadView': {
          templateUrl: 'partials/main.html',
          controller: 'AppCtrl'
        }  
      },
      resolve: {
        loadMyCtrl: ['$ocLazyLoad', function($ocLazyLoad){
          return $ocLazyLoad.load('js/AppCtrl.js')
        }]
      }
    })
.state('weiindex', {
    url: "/weiindex",
    cache: false,
    templateUrl: "templates/weiindex.html",
    controller: 'weiindexCtrl',
    resolve: {
        loadMyCtrl: function($ocLazyLoad){
            return $ocLazyLoad.load('js/weiindexCtrl.js');
        }
    }
})

其中,'js/weiindexCtrl.js'里面放着一个我们所需要的controller

angular.module('myApp')
  .controller('weiindexCtrl', ['$scope', function($scope){ 
    //...
   }])

本文由68399皇家赌场发布于集成经验,转载请注明出处:皇家娱乐场AngularJS中的按需加载ocLazyLoad示例,

关键词: 68399皇家赌场

最火资讯