Necesidad de conseguir hace clic en elementos 'Nombre' usando Vue

murday1983:

Estoy utilizando vuey necesito saber qué elemento se ha hecho clic como 1 es una iy la otra es una buttonpara que pueda pasar una variablea una modal, que es la misma para ambos como estoy compartiendo el modelo, pero dependiendo de lo que se ha hecho clic depende de el que se muestra el texto.

El (mal camino, pero / largo) es fácil tener sólo 2 clic methodsy pasar el variablepero prefiero hacerlo en 1 methodllamada en lugar así que estoy ningún código de duplicación, pero cada vez que tengo ' undefinedespalda.

código actual

<i id="a" name="editAddress" class="fas fa-pencil-alt fa-lg px-4" v-tooltip:bottom="'Edit this address'" @click="editAddress"></i>

editAddress(e) {
  let curTarget = e.currentTarget;
  let acurTarget = e.currentTarget.id;
  let bcurTarget = e.currentTarget.name;
  console.log(curTarget)
  console.log(acurTarget)
  console.log(bcurTarget)

introducir descripción de la imagen aquí

código intentado

<i id="a" name="editAddress" class="fas fa-pencil-alt fa-lg px-4" v-tooltip:bottom="'Edit this address'" type="submit" @click="handleClick($event)"></i>
<button id="addAddress" name="addAddress" class="btn btn-primary" @click.prevent="addAddress">Add a new address</button>

handleClick(e) {
  console.log('TARGET', e.target);
  console.log('NAME', e.target.name);
},

introducir descripción de la imagen aquí

No puedo entender por dónde voy mal. También he intentado reemplazar currentTargetcon target, pero aún no funcionaba

Boussadjra Brahim:

Debe utilizar getAttributeel método de la siguiente manera:

console.log('NAME', e.target.getAttribute('name'));

new Vue({
  el: '#app',
  methods: {


    handleClick(e) {
      console.log('TARGET', e.target);
      console.log('NAME', e.target.getAttribute('name'));
    },
  }
})
<!DOCTYPE html>
<html>

<head>
  <meta name="description" content="Vue.delete">
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
  <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
  <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.2.1/vue.min.js"></script>
</head>

<body>
  <div id="app">
    <i id="a" name="editAddress" class="fas fa-pencil-alt fa-lg px-4" v-tooltip:bottom="'Edit this address'" type="submit" @click="handleClick($event)">a</i>

  </div>

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=369524&siteId=1
Recomendado
Clasificación