Вызов функции по изменению переменной

168
28 мая 2018, 12:10

Есть переменная которая связана с полем (с использованием vue). Как вызвать функцию каждый раз когда переменная изменяется?

Answer 1

Для наблюдения у Vue есть отличные методы; watch, например:

new Vue({ 
  el: '#root', 
  data: { 
    input: '', 
    watchInput: '', 
  }, 
  watch: { 
    input: function () { 
      this.watchInput = `New watchInput value: ${Math.random()}!`; 
    } 
  } 
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.16/vue.min.js"></script> 
<div id='root'> 
  <input type='text' v-model='input' /> 
  <div>{{ watchInput }}</div> 
</div>

Answer 2

попробуйте так

methods: { 
  changeInput: function () { 
    console.log(this.model); 
  } 
}
<input @change="changeInput()" v-model="model">

Answer 3

Можно попробовать обернуть в computed, метод будет вызываться, когда переменная varName изменится

data() {
  return {
    dataName: null
  }
},
computed: {
  varName() {
    this.yourMethod();
    return this.dataName;
  }
},
methods: {
  yourMethod() {
  ...
  }
}
READ ALSO
Как распарсить json в ассоциативный массив / C#

Как распарсить json в ассоциативный массив / C#

Есть ответ с сервера в виде json:

316
Вызов командной строки в папке

Вызов командной строки в папке

Имеется следующий код:

229
Как получить ConnectionString из DbContext&#39;а EF Core?

Как получить ConnectionString из DbContext'а EF Core?

Это краткий перевод вопроса How to get ConnectionString from EF7 DbContext

286
Делегирование свойств в C#

Делегирование свойств в C#

Допустим, есть класс с неким свойством:

256