javascript – TypeError:无法读取未定义的属性’jquery’

前端之家收集整理的这篇文章主要介绍了javascript – TypeError:无法读取未定义的属性’jquery’前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在Chrome控制台中收到以下错误,
TypeError: Cannot read property 'jquery' of undefined

这是我的javascript函数,

<script type="text/javascript">
    var formApp = angular.module('formApp',[]);

    function formController($scope,$http){
        $scope.formData = {};

        $scope.processForm = function(){
            $http({
                method : 'POST',url : 'http://localhost:8080/ABCAPI/v1/image/front',data : $.param($scope.formData.imageFile),headers : {'Content-Type': "multipart/form-data",'Auth-Token' : "X"}
            }).success(function(data){
                console.log("");

                if (!data.success) {
                    // if not successful,bind errors to error variables

                } else {
                    // if successful,bind success message to message
                    $scope.message = data.message;
                }
            })
        };
    }

</script>

上述错误意味着什么,我哪里出错了?

解决方法

$scope.formData.imageFile似乎评估为undefined.
$.param(undefined) //throws Cannot read property 'jquery' of undefined

在$http()调用之前执行console.log($scope.formData). $scope.formData对象很可能不包含imageFile属性,或者imageFile为null / undefined.

请注意,$.param将普通对象或数组作为第一个参数,提供另一种类型的值(或没有值)属于未定义的行为.

此外,如果我正确地读取您的代码,您正试图通过$http上传图像文件.它不会那样工作,你需要XHR2的FormData API.有关简单的实现,请参阅this answer.

Angular不支持< input type =“file”>上的ng-model,这是前一个错误的原因.

猜你在找的jQuery相关文章