2015-09-10 60 views
0

AngularJS控制器/人次的動荷載是有辦法的結構/寫AngularJS以模塊化方式動態 負載/需要controllers/views取決於SystemJS頁路線?使用SystemJS

編輯: 這是我現在有,作爲試驗用SystemJS

app.js - 這是獲得進口在index.html的主文件

// vendor 
import angular from 'angular'; 

//Controllers 
import controllers from './controllers/_index.js' 

// Routes 
import routes from './routes/routes.config.js'; 

var seedApp = angular.module('seedApp', ['seedApp.route', 'seedApp.controllers']); 


angular.element(document).ready(function() { 
    return angular.bootstrap(document.body, [seedApp.name], { 
     strictDi: true 
    }); 
}); 

export default seedApp; 

_index.js - 所有控制器的索引

import { navCtrl } from './nav.js'; 
import { aboutCtrl } from './about.js'; 

var app = angular.module('seedApp.controllers', []); 

app.controller('navCtrl', navCtrl); 
app.controller('aboutCtrl', aboutCtrl); 

routes.config.js

import 'angular-ui-router'; 

var app = angular.module('seedApp.route', ['ui.router']); 


app.config(['$stateProvider', '$urlRouterProvider', function($stateProvider, $urlRouterProvider) { 

    $urlRouterProvider.otherwise('/'); 

    $stateProvider 
     .state('home', { 
      url: '/', 
      templateUrl: 'app/views/home.html' 
     }) 
     .state('about', { 
      url: '/about', 
      templateUrl: 'app/views/about.html', 
      controller: 'aboutCtrl as about' 
     }); 
}]); 

export default app; 
+0

是的,會有。你有什麼嘗試? – Jorg

+0

我已經編輯了一些額外的信息的問題。我假定使用Babel的系統模塊會通過system.register自動生成一切動態的。 然而,第二個想法,因爲我一次加載所有角模塊,它可能無法正常工作。因此出現這個問題。 – cusX

回答

0

簡答NO。 長答案YES,但你需要使用ocLayzLoad角插件,因爲這不是由Angular 1.x本地支持(這將在Angular 2.x中可能)。 順便說一句,如果你試圖動態加載文件,你需要使用System.import

希望有幫助。