2015-03-13 8 views
6

Sto provando a integrare uno script di caricamento nella mia pagina. Sto usando uploadcare.com. Hanno fornito una semplice direttiva, ma non riesco proprio a farlo funzionare:Il database angularjs per uploadcare.com non funziona

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

Sto installando ng-model = "test" e nel mio controller ho il seguente:

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

il codice html sembra che:

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

Quando controllo Firebug posso vedere che il widget funziona:

<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"> 

Ma questo valore di input non viene mai restituito al mio "$ scope.test". Perché? Quando esco $ scope.test, dice ancora "test" al posto del mio valore di percorso dell'immagine.

+0

@yretuta Si sta utilizzando la versione più recente di questa direttiva? La versione 1.0 non sembra gestita correttamente l'associazione dati. Vedi questo impegno qui: https://github.com/uploadcare/angular-uploadcare/commit/c048f4651723366e7b163c8335567feedc2362a9 –

risposta

2

È possibile utilizzare $ guardare in angolare

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

o la funzione fornita da uploadcare

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

che è una funzione di callback dopo immagine viene caricato

1

Si prega di verificare la portata del test di modello. È possibile anche aggiornare variabile portata all'interno direttiva come

scope.test = $element.value() 
Problemi correlati