在 vue js 的 winds 中传递参数的问题

problems passing parameters in winds in vue js

我有这段代码,我在信息变量中得到了一个数组。问题出在调用删除函数的删除按钮中,该函数将 id 作为参数传递,但它将第一个 id 传递给所有元素,因此当我删除任何元素时,它会删除第一个元素而不是引用按钮

    <tr>
      <th scope="row">{{info.product_key}}</th>
      <td>{{info.name}}</td>
      <td>{{info.quantities}}</td>
      <td>{{info.quatities_sold}}</td>
      <td>{{info.cost_price}}</td>
      <td>{{info.sale_price}}</td>
      <td><button @click="showEditModal" class="btn btn-warning">editar</button></td>
       <EditProductModal 
       :_id=info._id 
       :product_key=info.product_key
       :product_name=info.name 
       :quantities=info.quantities
       :quantities_sold=info.quatities_sold
       :cost_price=info.cost_price
       :sale_price=info.sale_price
       :categories=info.categories
         />
      <td><button @click="remove(info._id)" class="btn btn-danger">excluir</button></td>
    </tr>
   
  </tbody>```

正如您所说 I get an array in the info variable 但看起来您没有迭代而是直接使用它。如果您使用 v-for 正确迭代它,它应该传递正确的 ID。

工作演示:

const app = new Vue({
  el: '#app',
  data: {
    info: [{
      '_id': 1, 
      'name': 'alpha'
    }, {
      '_id': 2, 
      'name': 'beta'
    }, {
      '_id': 3, 
      'name': 'gama'
    }]
  },
  methods: {
    remove(itemID) {
        console.log(itemID);
    }
  }
  
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="app">
  <table>
    <tr v-for="item in info" :key="item._id">
      <td>{{item.name}}</td>
      <td><button @click="remove(item._id)">excluir</button></td>
    </tr>
  </table>
</div>