Как передать ссылку на переменную в метод, а не на значение переменной, в VueJS - PullRequest
0 голосов
/ 26 декабря 2018

В моем шаблоне у меня есть это:

<input @input="myMethod(myVariableName)" />

Тогда у меня есть myMethod

myMethod(variablePassed) {
  console.log(variablePassed)
}

То, что я получаю, это значение "variablePassed" (конечно).Но есть ли способ узнать, какая переменная была передана?

1 Ответ

0 голосов
/ 26 декабря 2018

Да, вы можете сделать это, передав переменную, заключенную в литерал объекта {}, и используйте Object.keys(varname)[0], чтобы получить его имя, и Object.values(varname)[0], чтобы получить его значение:

Vue.config.devtools = false;
Vue.config.productionTip = false;

new Vue({
  el: '#app',

  data() {
    return {
      name: "john"
    }
  },
  methods: {
    myMethod(variablePassed) {
      
      console.log(Object.keys(variablePassed)[0])
       console.log(Object.values(variablePassed)[0])
      
    }
  }
})
#app {
  padding: 20px;
}
<link type="text/css" rel="stylesheet" href="//unpkg.com/bootstrap/dist/css/bootstrap.min.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.16/vue.js"></script>


<div id="app" class="container">
  <input @input="myMethod({name})" class="form-control" />
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...