无法从返回的对象-ng-file-upload-Angular中获得错误

时间:2016-02-29 22:34:42

标签: javascript angularjs validation ng-file-upload ng-img-crop

我正在使用ng-file-upload和ngImgCropExtended。

一切都很好,我唯一的问题是,当验证失败时,它会无声地失败,而不会通知用户。

我添加了ngf-validate-fn ="验证($ file)"到我的上传按钮,可以看到错误,但无法访问或检查错误。

我的HTML:

 <button 
         id ="bannerUpload" 
          ngf-validate-fn="validate($file)" 
          ngf-accept="'image/*'" 
          ngf-min-width = "1600" 
          ngf-max-size = "1.3MB" 
          ngf-pattern="'.png, .jpg, .JPEG, .jpeg'" 
          ngf-select="handleFileSelect($file)" 
          ngf-drop = "handleFileSelect($file)" 
          ng-model="picFile" accept="image/*"></button>

控制器:

.controller('galleryController', ['$scope', '$attrs', '$http', 'Upload', '$timeout', function ($scope, $attrs, $http, Upload, $timeout) {     

    $scope.validate = function($file ){
          console.log($file);
          console.log( $file.constructor );
    }

使用$ error对象记录文件,但我似乎无法访问它。我可以访问文件对象的其他属性,例如name。

如果我记录构造函数,它会给我

function File() { [native code] }

如果我记录File对象,它会给我(例如)

File{}
   $error: "minWidth"
   $errorMessages: Object
   $errorParam: 1600
   $ngfBlobUrl:  'theUrlOfTheImage'
   $ngfHeight: 274
   $ngfWidth: 316
   lastModified: 145437567099
   name: nameOfMyImage.jpg

我可以使用$ file.name访问名称等普通属性。 $ file。$ error返回undefined。 $ file。$ error()什么都不返回,没有错误没有日志。还尝试了$ file.validate。$ error,因为文档说

NGF-验证-FN =&#34;验证($文件)&#34; //自定义验证函数,返回包含错误的布尔值或字符串。                   //验证错误名称:validateFn

最后尝试了JSON.stringify($ file),但这会返回一个空对象{}

0 个答案:

没有答案