angular.js - angularjs 使用oclazyload 載入ui-grid
漂亮男人
漂亮男人 2017-05-15 17:07:58
0
1
639

$ocLazyLoadProvider配置部分

          {
              name: 'ui.grid',
              files: [
                  'vendor/modules/angular-ui-grid/ui-grid.min.css',
                  'vendor/modules/angular-ui-grid/ui-grid.min.js'
              ]
          },

ui-router部分


.state('app.account.account_M',{
   url:'/account_M',
                  templateUrl:'tpl/account_account_M.html',
                  resolve: {
                     deps: ['$ocLazyLoad',
                        function( $ocLazyLoad ){
                          return $ocLazyLoad.load(['ui.grid']).then(
                              function(){          
                                  return $ocLazyLoad.load('js/controllers/account_M.js');
                              }
                          );
                      }]
                  }
              })
          

這樣是沒問題的,可是ui-grid把許多功能分開了,要使用的話需要注入,就是要從ui-grid.min.js注入多個
結果我寫成瞭如下
$ocLazyLoadProvider配置部分

             {
                  name: 'ui.grid',
                  files: [
                      'vendor/modules/angular-ui-grid/ui-grid.min.css',
                      'vendor/modules/angular-ui-grid/ui-grid.min.js'
                  ]
              },
              {
                  name: 'ui.grid.resizeColumns',
                  files: [
                      'vendor/modules/angular-ui-grid/ui-grid.min.css',
                      'vendor/modules/angular-ui-grid/ui-grid.min.js'
                      
                  ]
              },
              {
                  name: 'ui.grid.expandable',
                  files: [
                      'vendor/modules/angular-ui-grid/ui-grid.min.css',
                      'vendor/modules/angular-ui-grid/ui-grid.min.js'
                      
                  ]
              },
          

ui-router部分

.state('app.account.account_M',{
                  url:'/account_M',
                  templateUrl:'tpl/account_account_M.html',
                  resolve: {
                     deps: ['$ocLazyLoad',
                        function( $ocLazyLoad ){
                          return $ocLazyLoad.load(['ui.grid','ui.grid.resizeColumns','ui.grid.expandable']).then(
                              function(){          
                                  return $ocLazyLoad.load('js/controllers/account_M.js');
                              }
                          );
                      }]
                  }
              })
          

但是肯定不能這樣啊,這樣應該重複多次加載了ui-grid.min.js和css了吧,我該怎麼做呢,求指教

漂亮男人
漂亮男人

全部回覆(1)
巴扎黑
{
          name: 'ui.grid.*',
          files: [
            'static/bower_components/angular-ui-grid/ui-grid.min.js',
            'static/bower_components/angular-ui-grid/ui-grid.min.css',
            'static/bower_components/angular-ui-grid/ui-grid.css'
          ]
}

之前看到的issues

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板