【问题标题】:Get value in v-for loop into methods in vuejs [duplicate]将v-for循环中的值获取到vuejs中的方法中[重复]
【发布时间】:2022-01-16 08:31:17
【问题描述】:
<form method="post" action="#" enctype="multipart/form-data">
<div class="row">
    <div class="col-md-12">
       <div class="image-upload" v-for="(item, index) in uploadVal" :key="item._id">
          <label class="btn btn-sm btn-success">
              <a-icon type="upload" />Upload
              <input
                type="file"
                ref="file"
                accept="image/*"
                @change="handleClickUpload"
                style="display: none;"
              />
        </label>
        <div class="show-img">
            <img :src="getImageURL(item.url)" />
        </div>
       </div>
    </div>
</div>
</form>

在方法中:

methods: {
   handleClickUpload(e) {
      console.log(e.target.files);
   },
}

我正在 vuejs 中上传图片。我想在方法的handleClickUpload 下获取v-for 循环的index 值。有没有办法在 handleClickUpload 中获得 index ?请给我一些想法。谢谢

【问题讨论】:

    标签: javascript vue.js


    【解决方案1】:

    试试这个:

    @change="handleClickUpload($event, index)"
    
    methods: {
      handleClickUpload(e, i) {
        console.log(e.target.files, i);
      },
    }
    

    【讨论】:

      【解决方案2】:

      您可以将一个函数传递给它,并将eventindex 外部传递为:

      <input
        type="file"
        ref="file"
        accept="image/*"
        @change="(e) => handleClickUpload(e, index)"
        style="display: none"
      />
      

      现场演示

      并在函数handleClickUpload中获取索引为:

      handleClickUpload(e, i) {
        console.log(e.target.files);
        console.log(i);
      },
      

      【讨论】:

        猜你喜欢
        • 2021-12-28
        • 2020-04-01
        • 1970-01-01
        • 2021-04-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-09-29
        • 2019-04-06
        相关资源
        最近更新 更多