使用 ngRepeat 和 ng-src 时看不到要上传的图像预览
Can't see Preview of Image to Upload when using ngRepeat and ng-src
我已经为我的问题创建了一个CodePen示例。
我正在使用HTML5 FileReader
和Angular来创建一个简单的多文件上传,其中包含要上传的图像的预览。
问题:我没有在ng-repeat
范围内获得选定的图像。 但是,当我将其注销到控制台时,我确实获得了正确的图像数据......我做错了什么?
.HTML:
<div class="container" ng-app="my.app" ng-controller="FileUploadController">
<div class="row">
<div class="page-header">
<h3>File Upload Test</h3>
</div>
<input type="file" class="well" id="files" name="files[]" multiple onchange="angular.element(this).scope().upload()" />
<span ng-repeat="x in images">
<img ng-src="{{x}}" />
</span>
</div>
</div>
.CSS:
img {
max-height: 100px;
}
Javascript:
var app = angular.module("my.app", []);
app.controller("FileUploadController", function($scope) {
$scope.images = [];
$scope.upload = function() {
var files = document.getElementById("files").files;
if (files) {
for (i = 0; i < files.length; i++) {
if (files[i]) {
var reader = new FileReader();
reader.onload = function (e) {
console.log(e.target.result);
$scope.images.push(e.target.result);
}
reader.readAsDataURL(files[i]);
}
}
}
};
})
http://jsfiddle.net/orion514/kkhxsgLu/136/具有相同的工作实现。
<div ng-repeat="x in images">
<img class="thumb" ng-src="{{x}}" />
$scope.images = [];
$scope.imageUpload = function(event){
var files = event.target.files; //FileList object
for (var i = 0; i < files.length; i++) {
var file = files[i];
var reader = new FileReader();
reader.onload = $scope.imageIsLoaded;
reader.readAsDataURL(file);
}
$scope.imageIsLoaded = function(e){
$scope.$apply(function() {
$scope.images.push(e.target.result);
});
}
}
在修改集合时尝试$scope.$apply()
,如下所示,
reader.onload = function (e) {
console.log(e.target.result);
$scope.images.push(e.target.result);
$scope.$apply();
}
相关文章:
- 如何使用url加载程序在webpack中导入多个图像
- nodejs-expressjs上传图像并显示它们
- 使用JSP从服务器检索和显示图像
- 角度:在ng重复上切换图像
- 画廊图像未显示
- Phonegap-(安卓/iphone)多个图像的图像库出现问题
- Javascript排序的图像弹出窗口..可以't单独弹出
- 画布数据到图像
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- 使图像在单击时展开到不大于浏览器
- Html页面上的多个Base64图像和平滑加载
- UIAutomation放大图像
- 使用javascript在Flash中加载外部图像
- 可以在这里为背景图像设置滤镜吗
- 当图像转换为本地存储的DataURL时,EXIF被删除
- 如何使用ngrepeat和双向绑定获得指令的隔离范围
- 使用 js 将背景图像设置为 HTML
- Javascript将图像src更改为淡入淡出
- 无法在本地计算机中将画布另存为图像
- 使用 ngRepeat 和 ng-src 时看不到要上传的图像预览