我有一個相當小的角JS應用程序,它的工程很好,但我想添加一些依賴的例如bootstrap.ui。這是我的模塊的開始,這很好用!依賴的打破應用程序
angular.module('awesomefeed')
.controller('MainCtrl', function ($scope, $http) {
但是當我添加的依賴性的意見停止工作,控制器永遠不會被調用(用調試器檢查)。
angular.module('awesomefeed',['ui.bootstrap'])
.controller('MainCtrl', function ($scope, $http) {
即使有一個空的依賴關係,問題仍然存在。
angular.module('awesomefeed',[])
.controller('MainCtrl', function ($scope, $http) {
我發現了一些教程,他們都認爲這應該工作,我使用嚴格模式,我不知道這是否會影響這一點。
編輯:我解決了這個問題,正如George Stocker指出回購會隨着時間的推移會發生變化,所以我要在這裏描述我的修復方案,以適用於未來的參考。
我在兩個地方調用angular.module,首先在app.js和controllers/main.js文件中調用。這些電話是這樣的:
//file:app.js
angular.module('awesomefeed', [
'ngCookies',
'ngResource',
'ngSanitize',
'ngRoute'
]).config(function ($routeProvider) {
和
//file:controllers/main.js
angular.module('awesomefeed')
.controller('MainCtrl', function ($scope, $http) {
我想添加其他的依賴,所以我說[「ui.bootstrap」]在/controller/main.js模塊電話,有什麼我沒有意識到創建和檢索模塊的區別。 (AngularJS docs creation and retrieval of a module)。 Main.js檢索已經創建的angular.module('awesomefeed'),但是當我將這個依賴列表添加到調用中時,它停止了對已經存在的angular.module('awesomefeed')的調用,而是成爲了創建調用它會用新創建的幾乎空的angular.module('awesomefeed',['ui.bootstrap'])覆蓋angular.module('awesomefeed')。
解決方法是將依賴項添加到app.js中創建調用的依賴項列表中。
您是否在瀏覽器中運行代碼並在控制檯中查找錯誤? – JeffryHouser
@Elian我們需要在問題本身中重現問題的所有代碼。當您的源代碼回購更改時,此問題將變得無用,因爲它不會向未來的訪問者展示問題所在。 –
@GeorgeStocker Phil Sandlers答案解決了我的問題,我會在有空的時候更新問題以包含問題代碼。 –