我正在尝试上传带有进度条的文件,但无论我做什么,都会不断出现 2 个错误
1) 模块未定义,第二个是 [$injector:nomod] 模块不可用。
这是我的 Controller
PageController.js
var PageController = function ($scope, fileUpload ) {
angular.module('app', ['ngProgress'])
angular.module('app')
.controller('PageController', function ($scope) {
//$scope.fileUpload = {};
});
PageController.$inject = ['$scope','ngProgress'];
};
我已经做了很多搜索但无法找到错误。 任何帮助将不胜感激......提前致谢
最佳答案
首先不应该在 Controller 内部调用模块方法,所以:
var PageController = function ($scope, fileUpload) {
angular.module('app', ['ngProgress'])
angular.module('app')
.controller('PageController', function ($scope) {//I will replace this with PageController
//$scope.fileUpload = {};
});
PageController.$inject = ['$scope', 'ngProgress'];
};
应该看起来更像这样:
var PageController = function ($scope, fileUpload) {
};
PageController.$inject = ['$scope', 'ngProgress'];
angular.module('app', ['ngProgress'])
angular.module('app').controller('PageController', PageController);
我删除了您 Controller 方法中的函数并将您定义的 PageController
放在它的位置
第二件事是你不需要调用模块方法两次,第一次已经返回模块,所以最好的方法应该是这样的:
var PageController = function ($scope, fileUpload) {
};
PageController.$inject = ['$scope', 'ngProgress'];
angular.module('app', ['ngProgress']).controller('PageController', PageController);
我个人更喜欢数组符号,所以我最喜欢的是这样的,但这取决于你:
angular.module('app', [
'ngProgress'//this is a module dependency (its also createt with angular.module)
]).controller('PageController', [
'$scope',
'fileUpload',//this is a dependency for the controller (probably a service)
function ($scope, fileUpload) {
}
]);
关于javascript - 错误 : [$injector:nomod] Module is not available,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29538428/