无法使用AngularJS创建文件上传。 有一个表格:
<form ng-submit="getElem()" ng-repeat="elem in elems" class="update-form">
<label for="name">Elem name: {{elem.name}}</label>
<input type="file" id="file" name="file" />
<button type="button" ng-click="addImage()" class="btn btn-success">
<span class="glyphicon glyphicon-pencil" aria-hidden="true"></span>
Add
</button>
</form>
我在AngularJS中有一个方法:
$scope.addImage = function () {
$scope.data = 'none';
var f = document.getElementById('file').files[0],
r = new FileReader(),
currentElem = this.elem.id;
r.onloadend = function(e){
$scope.data = e.target.result;
var updateUrl = 'https://example/find' + currentElem + '/images';
$http.post(updateUrl, $scope.data)
.success(function (data, status, headers, config) {
console.info('Update image fine!');
});
}
r.readAsBinaryString(f);
单击“添加”按钮后,出现错误“TypeError:在'FileReader'上执行'readAsBinaryString'失败:参数1不是'Blob'类型。” 为什么会这样?我如何解决这个问题,因为我需要上传文件?
答案 0 :(得分:0)
尝试以下功能
{{1}}