Javascript angular uploadcare$parse未定义错误

Javascript angular uploadcare$parse未定义错误,javascript,angularjs,uploadcare,Javascript,Angularjs,Uploadcare,实现可以找到的angular uploadcare模块 似乎可以,但Chrome给出了第34行$parse undefined错误。如何解决这个问题 我已将代码粘贴到下面 /** * @ngdoc directive * @name angular-uploadcare.directive:Uploadcare * @description Provides a directive for the Uploadcare widget. * # Uploadcare */ angular

实现可以找到的angular uploadcare模块

似乎可以,但Chrome给出了第34行$parse undefined错误。如何解决这个问题

我已将代码粘贴到下面

/**
 * @ngdoc directive
 * @name angular-uploadcare.directive:Uploadcare
 * @description Provides a directive for the Uploadcare widget.
 * # Uploadcare
 */
angular.module('ng-uploadcare', [])
  .directive('uploadcareWidget', function () {
    return {
      restrict: 'E',
      replace: true,
      require: 'ngModel',
      template: '<input type="hidden" role="ng-uploadcare-uploader" />',
      scope: {
        onWidgetReady: '&',
        onUploadComplete: '&',
        onChange: '&',
      },
      controller: ['$scope', '$element', '$log', function($scope, $element, $log) {
        if(!uploadcare) {
          $log.error('Uploadcare script has not been loaded!.');
          return;
        }
        $scope.widget = uploadcare.Widget($element);
        $scope.onWidgetReady({widget: $scope.widget});
        $scope.widget.onUploadComplete(function(info) {
          $scope.onUploadComplete({info: info});
        });
        $scope.widget.onChange(function(file) {
          // add data binding for hidden inputs
          $scope.$apply(function () {
            $parse($attrs.ngModel).assign($scope.$parent, $element.val());
          });
          $scope.onChange({file: file});
        })
      }]
    };
  });
/**
*@ngdoc指令
*@name.uploadcare.directive:uploadcare
*@description为Uploadcare小部件提供了一个指令。
*#上传护理
*/
角度模块('ng-uploadcare',[])
.directive('uploadcareWidget',函数(){
返回{
限制:'E',
替换:正确,
要求:'ngModel',
模板:“”,
范围:{
onWidgetReady:“&”,
onUploadComplete:“&”,
onChange:“&”,
},
控制器:['$scope','$element','$log',函数($scope,$element,$log){
如果(!uploadcare){
$log.error('Uploadcare脚本尚未加载!);
返回;
}
$scope.widget=uploadcare.widget($element);
$scope.onWidgetReady({widget:$scope.widget});
$scope.widget.onUploadComplete(函数(信息)){
$scope.onUploadComplete({info:info});
});
$scope.widget.onChange(函数(文件){
//为隐藏的输入添加数据绑定
$scope.$apply(函数(){
$parse($attrs.ngModel).assign($scope.$parent,$element.val());
});
$scope.onChange({file:file});
})
}]
};
});

这似乎是版本0.1.2中的一个bug。要修复此问题,请将控制器签名更改为:


控制器:['$scope','$element','$attrs','$parse','$log',函数($scope,$element,$attrs,$parse,$log){

似乎有些东西应该是可用的:我做了google$parse并找到了那个链接,但我对angular的官方文档理解不太好。你能给我一个提示吗?这似乎是指令中的一个错误,新版本很快就要发布了!很有趣,我实际上已经在控制器,因为我认为$TALS丢失或拼写错误或类似的东西,但我不想添加$解析。谢谢-伟大的模块!请考虑使用这个版本,因为它修复了,也改变了一点行为(E-> A)