Как использовать генератор обработчиков в событии Vue - PullRequest
0 голосов
/ 19 января 2019

Все:

Интересно, как я могу запустить функцию генератора обработчика событий для обработчика событий, например:

<button @click="buildHandler()">Click</button>

function buildHandler(){
    return function(){
        alert("button clicked")
    }
}

Поскольку обработчик событий Vue принимает оба формата обработчиков событий с / без круглых скобок, мне интересно, как реализовать мой построитель обработчиков?

Спасибо

1 Ответ

0 голосов
/ 19 января 2019

Вы должны добавить () в свой шаблон как:

  <button @click="buildHandler()();">Click</button>

, чтобы выполнить возвращаемую функцию.

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

new Vue({
  el: '#app',
  methods: {
    buildHandler() {
     
      return function() {
        console.log("button clicked");
      };
    }
  }
});
<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">
  <button class="btn btn-primary" @click="buildHandler()();">Click</button>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...