есть ли способ, чтобы изменить имя функции на событие click?


есть ли способ, чтобы изменить имя функции на событие click?

04.11.2020 04:41:33 Просмотров 40 Источник

Мне нужно изменить имя метода внутри v-on: click="function1", но когда я жестко кодирую function1 внутри html, кнопка работает и function1 выполняется, но когда я передаю атрибут "function1" свойству данных Vue, кнопка не работает и function1 не выполняется. пожалуйста, помогите мне. спасибо

button type="button" v-on:click="obj.continueButton" class="btn">Continue</button>

var test = new Vue({
el: "#app",
data: {
    obj : { 
            continueButton: 'function1'
    }
У вопроса есть решение - Посмотреть?

Ответы - есть ли способ, чтобы изменить имя функции на событие click? / is there a way to change the function name of the click event?

Является ответом!
Hannah

04.11.2020 04:46:45

(Отредактировал более ранний ответ, который был неправильным)

Вместо этого вы могли бы попробовать сделать это таким образом:

<button type="button" v-on:click="execFn(obj.continueButton)" class="btn">
  Continue
</button>

...
data: {
  obj: {
    continueButton: 'function1'
  }
},
methods: {
  execFn(name) {
    this[name]();
  },
  function1() {
    // do something
  },
  function2() {
    // do something else
  }
}
Помочь в развитии проекта:
Закрыть X