Angularjs 使用ES6和systemjs.import延迟加载角度模块

Angularjs 使用ES6和systemjs.import延迟加载角度模块,angularjs,jspm,systemjs,Angularjs,Jspm,Systemjs,我正在尝试使用system.load创建一个基本路由,并使用angular Resolution延迟加载单独的模块 基本路由配置如下所示 import "angular"; import "angular-ui-router"; class RouteConfig { constructor($stateProvider, $urlRouterProvider){ this.stateProvider = $stateProvider; this.ur

我正在尝试使用system.load创建一个基本路由,并使用angular Resolution延迟加载单独的模块

基本路由配置如下所示

import "angular";
import "angular-ui-router";

class RouteConfig {

    constructor($stateProvider, $urlRouterProvider){
        this.stateProvider = $stateProvider;
        this.urlRouterProvider = $urlRouterProvider;

        $stateProvider
            .state("index", {
                url: "/",
                templateUrl: "/app/common/templates/home.html",
            })
            .state('order',{
                url:'/order',
                templateUrl:"/app/modules/order/templates/order.html",
                //controller:"order.controller as orderCtrl",
                resolve:{
                    load:()=>{
                        System.import('app/modules/order/order.module');
                        System.import('app/modules/order/order.controller');
                    }
                }
            });

        $urlRouterProvider.otherwise("/");
    };

    static factory($stateProvider, $urlRouterProvider){
        RouteConfig.instance = new RouteConfig($stateProvider,$urlRouterProvider);   
        return RouteConfig.instance;
    };
}

RouteConfig.factory.$inject = ['$stateProvider', '$urlRouterProvider'];

export default RouteConfig;
现在,我正在尝试根据所需的模块延迟加载控制器。 因此,模块和控制器加载为

输入“角度”; 导入“角度ui路由器”

和控制器

"use strict";

class OrderController {
    constructor() {
        this.order = "Please place an order";
    }
    static factory() {
        OrderController.instance = new OrderController();
        return OrderController.instance;
    }

}

angular.module('order.module').controller('Order.Controller', OrderController);

export default OrderController;
现在当我尝试这个的时候。这给了我一个错误

有人能告诉我如何加载这个模块吗。似乎angular模块文件是通过systemjs加载的,但它没有注册angular模块。有什么解决办法吗

尝试使用:

System.import('app/modules/order/order.module')
    .then(function () {
        System.import('app/modules/order/order.controller');
    });
内部
load()
解决

尝试使用:

System.import('app/modules/order/order.module')
    .then(function () {
        System.import('app/modules/order/order.controller');
    });
内部
load()
resolve