Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 错误:[ng:areq]参数';模块';不是函数,获取对象_Angularjs_Angular File Upload - Fatal编程技术网

Angularjs 错误:[ng:areq]参数';模块';不是函数,获取对象

Angularjs 错误:[ng:areq]参数';模块';不是函数,获取对象,angularjs,angular-file-upload,Angularjs,Angular File Upload,我尝试使用npm下载它,然后在单个文件中浏览所有内容。可以查看错误详细信息 我不能理解这些错误,因为现在我对AngularJS还是新手。这是我的密码 var angular = require('angular'); angular .module('jobApp', [require('angular-material'), require('ng-file-upload')]) .controller('MainCtrl', ['$rootScope', '$scope',

我尝试使用npm下载它,然后在单个文件中浏览所有内容。可以查看错误详细信息

我不能理解这些错误,因为现在我对AngularJS还是新手。这是我的密码

var angular = require('angular');
angular
    .module('jobApp', [require('angular-material'), require('ng-file-upload')])
    .controller('MainCtrl', ['$rootScope', '$scope', '$mdToast', '$animate', '$http', '$timeout', '$q', '$log', 'Upload',
        function($rootScope, $scope, $mdToast, $animate, $http, $timeout, $q, $log, Upload) {
        'use strict';
        // Initialize the scope variables
        $scope.$watch('files', function () {
            $scope.upload($scope.files);
        });
        $scope.upload = function (files) {
            if (files && files.length) {
                for (var i = 0; i < files.length; i++) {
                    var file = files[i];
                    Upload.upload({
                        url: 'http://sr-recruit.herokuapp.com/resumes',
                        fields: {
                            'name': $scope.name,
                            'email': $scope.email,
                            'about': $scope.about
                        },
                        file: file
                    }).progress(function (evt) {
                        var progressPercentage = parseInt(100.0 * evt.loaded / evt.total);
                        $scope.log = 'progress: ' + progressPercentage + '% ' +
                                    evt.config.file.name + '\n' + $scope.log;
                    }).success(function (data, status, headers, config) {
                        $scope.log = 'file ' + config.file.name + 'uploaded. Response: ' + JSON.stringify(data) + '\n' + $scope.log;
                        $scope.$apply();
                    });
                }
            }
        };
    }]);
我仍然坚持错误

TypeError: Cannot read property '' of undefined

不知道为什么。仅供参考,我使用内置的Laravel elixir browserify来运行任务。

我注意到您正在使用
require('ng-file-upload')
来包含模块。尽管npm提供了
ng文件上传
模块,但下载的JS文件不是commonJS格式

为了使
require('ng-file-upload')
在您的示例中工作,源文件需要像这样导出模块:

module.exports = angular.module('ng-file-upload').name;

由于您要包含的文件不是这种情况,因此您需要使用它来处理Browserify。这是一篇关于的好文章。

requires数组(模块的第二个参数)应该是一个字符串数组。你是什么意思
.module('jobApp',[require('angular-material'),require('ng-file-upload'))
?它应该是
.module('jobApp',['ngMaterial','ngFileUpload'))
。我不确定这些导出的节点模块版本是什么,但如果使用browserify,我打赌它不是字符串(只是选中了ng文件上载,没有模块导出)。很多人建议这样做好吧,假设它真的有效,你应该只有一个数组,而不是两个。也就是说,你有
[require('angular-material')],[require('ng-file-upload')]
应该在哪里
[require('angular-material'),require('ng-file-upload')]
仅供参考,我使用了laravel elixir browserify函数。因为我认为它也会自动浏览。我使用npm来管理angularjs,我发现它在浏览方面没有问题it@MuhaiminAbdul这是因为角度节点模块有
index.js
文件,其中包含
module.exports='ngMaterial'
我尝试对其进行填充,但没有成功,因为结果是其他错误
TypeError:无法读取未定义的
@MuhaiminAbdul垫片在browserify中可能很棘手。如果我们可以在package.json中看到您的垫片设置,以及任务运行程序的browserify配置(gulp/grunt),这可能会有所帮助。
module.exports = angular.module('ng-file-upload').name;