2014-10-06 58 views
1

我在創建一個RequireJS定義方法中的AngularJS模塊時遇到了問題。RequireJS中的AngularJS模塊創建依賴關係

當我做參考UI的路由器模塊,我需要,角告訴我:

Uncaught Error: [$injector:modulerr] Failed to instantiate module myApp due to: 
Error: [$injector:nomod] Module 'myApp' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument. 

這僅如果定義在requireJS uiRouter依賴列表發生。

這裏是我的代碼:

require.config({ 
    paths : { 
     'angular' : "/script/lib/angular", 
     'uiRouter' :"/script/lib/angular-ui-router", 

    }, 
    shim : { 
     'angular': { 
      exports : 'angular' 
     }, 
     'uiRouter' : { 
      deps : ['angular'] 
     } 
    } 

}); 

define(['angular', 'uiRouter'], function (angular) { 
    var module = angular.module('myApp', []); 
}); 

如果我參加uiRouter了定義依賴陣列,按預期工作的一切。我究竟做錯了什麼?

+0

你是什麼requirejs版本? – 2014-10-06 14:15:05

+0

Angular:v1.3.0-rc.4 – 2014-10-06 14:15:42

+0

我編輯了我的asnwer,你的return語句在哪裏? – Blackunknown 2014-10-06 14:19:20

回答

0

您需要將ui.router添加到您的模塊。

define(['angular', 'uiRouter'], function (angular) { 
    var module = angular.module('myApp', ['ui.router']); 
}); 

編輯:我添加了以下內容:

define('myApp', ['angular', 'uiRouter'], function (angular) { 
    var module = angular.module('myApp', ['ui.router']); 
}); 
+0

我已經嘗試過,但我得到同樣的問題。 – 2014-10-06 14:12:08

+0

我剛剛添加編輯說,雖然它可能無法解決您的問題。 :P讓我們看看還有什麼。 – Blackunknown 2014-10-06 14:12:41