multiplie图像上传网址和文件名不起作用

时间:2017-04-06 08:23:57

标签: javascript

我的问题是,当我选择显示正确的多个图像时,我将其存储在一个数组中,从该数组我需要获取图像名称。现在它正在工作,但在setOfImages数组中,所有图像名称都相同。当我将setOfImages数组放在地图函数中时,我需要获取图片网址,这是我要面对的两个问题,如果不清楚放置console.log(setOfImages)console.log(imageUrl),< / p>

imagetrigger(e){
var setOfImages =[], imageUrl=[];
for (var i = 0; i < e.target.files.length; i++){ 
    var file = e.target.files[i];
    if(!file.type.match('image'))
    continue;
    var reader = new FileReader();
    reader.onload = function(e){
        setOfImages.push({
             fileName:file.name,
             image:e.target.result.split(',')[1]
        });
        $('.image').remove();
        for(var j = 0; j<setOfImages.length; j++) {
            $('.placeholder').prepend('<div class="image"><img src="data:image/jpeg;base64,'+ setOfImages[j].image +'" /></div>');
        }
        setOfImages.map(function(){
            imageUrl.push(el.fileName);
        })
        console.log(imageUrl)
    }
    reader.readAsDataURL(file);
}

}

1 个答案:

答案 0 :(得分:0)

只需将参数el添加到地图即可。

setOfImages.map(function(){
  imageUrl.push(el.fileName);
})

像这样改变。

setOfImages.map(function(el){
  imageUrl.push(el.fileName);
})