2015-09-19 45 views
0

我嘗試通過require.js要求和角度RouteProvider未定義

HTML

<script data-main="application/main" src="http://requirejs.org/docs/release/2.1.14/minified/require.js"></script> 

main.js

require.config({ 
    baseUrl: "application", 
    paths: { 
     angular: 'https://code.angularjs.org/1.4.5/angular', 
     angularRoute: 'https://code.angularjs.org/1.4.5/angular-route' 
    }, 

    shim: { 
     angular: {exports: 'angular' } , 
     angularRoute: { deps: ['angular'], exports: 'angularRoute' }, 
    } 
}); 

require(['app', 'routesBoot'], function (app) { 
    app.init(); 
}); 

加載時,得到下面的代碼未定義app.js

define(['angular'], function (angular) { 

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

    app.init = function() { 
     console.log('app.init called'); 
     angular.bootstrap(document, ['reporterdashboard']); 
    }; 

    return app; 
    }); 

routesBoot。 js

require(['app', 'angularRoute'], function (app, angularRouterParam) { 

    //put my routes in here, using angularRouterParam 
    //but angularRouterParam = undefined 

    return app.config(function (angularRouterParam) { 
     angularRouterParam.when('/page2', { controller: 'Page2Controller', templateUrl: 'page2.html' }); 
    }); 
}); 

當我檢查angularRouterParam傳入routesBoot它是未定義的。我做錯了什麼? 我基本上試圖分裂我的應用程序,因此,我的路線放置在自己的文件(控制器,指令等將住在他們自己的啓動.js文件)。我讓require.js關注所有的.js文件加載,可以在main.js中看到。 routesBoot中的代碼目前在語法上不正確,因爲我被卡住了未定義的angularRouterParam問題

+0

我不確定,但應該在app.js中定義應用程序,如果你返回的應用程序,而不是角已經存在,是一個依賴? – KyleK

回答

0

問題出在我在此處發佈的代碼的外側。我首先將一個指令加載到index.html(View First)中。該指令正在加載其他依賴項。該項目相當龐大,大約40個.js文件。我的要求重組是有過錯的。