6

我正在尝试将上传脚本集成到我的页面中。我使用uploadcare.com。他们提供了一个简单的指令,但我无法让它工作:

https://github.com/uploadcare/angular-uploadcare/blob/master/angular-uploadcare.js

我正在设置 ng-model="test" 并且在我的控制器中我有以下内容:

angular.module('testApp')
  .controller('MyCtrl', function ($scope) {
    $scope.test = "test";
  });

html 代码如下所示:

<uploadcare-widget ng-model="test" data-public-key="xyz" />

当我检查 Firebug 时,我可以看到该小部件有效:

<input type="hidden" role="uploadcare-uploader" ng-model="test" data-public-key="6e0958899488d61fd5d0" data-crop="1200:630" value="http://www.ucarecdn.com/ca5513da-90f1-40d1-89e7-648237xxxxxx/-/crop/2560x1344/0,128/-/preview/" class="ng-isolate-scope ng-valid">

但是这个输入值永远不会填充回我的“$scope.test”。这是为什么?当我输出 $scope.test 它仍然说“测试”而不是我的图像路径值。

4

2 回答 2

2

您可以在角度使用 $watch

$scope.$watch('test', function(newValue, oldValue) {
    console.log($scope.test);
});

或者uploadcare提供的功能

$scope.onUCUploadComplete = function(info){
  console.log(info);
}; 

图片上传后的回调函数

于 2015-08-06T09:52:45.760 回答
1

请检查测试模型的范围。您还可以更新指令内的范围变量,例如

scope.test = $element.value()
于 2015-08-07T05:58:45.440 回答