我的代码是这样的:
<div id="app">
<div v-for="item in items">
<div v-if="!image">
<h2>Select an image</h2>
<input type="file" @change="onFileChange">
</div>
<div v-else>
<img :src="image" />
<button @click="removeImage">Remove image</button>
</div>
</div>
</div>
演示和完整代码如下:https://codepen.io/moschel26/pen/jwdMgp
有5个输入文件。我希望当我在输入文件3上传图像时,图像仅显示在图像3上。当我在输入文件5上传图像时,图像仅显示在图像5上等。
我该怎么做?
答案 0 :(得分:2)
您应该创建对象数组以设置上传的图像。
<div id="app">
<div v-for="item in items">
<div v-if="!item.image">
<h2>Select an image</h2>
<input type="file" @change="onFileChange(item, $event)">
</div>
<div v-else>
<img :src="item.image" />
<button @click="removeImage(item)">Remove image</button>
</div>
</div>
</div>