Vue.js:click-handler

时间:2018-08-15 11:33:48

标签: vue.js pagination async-await

<paginate v-model="page" :page-count="pageCount" :container-class="'pagination'" :click-handler="clickCallback(page)" prev-text="‹" next-text="›"></paginate>

...
data: {
    page: 1
},
methods: {
    clickCallback: async function(page) {
    ...
  }
...

当我单击分页块中的页面时,发生错误:

[Vue警告]:道具无效:道具“ clickHandler”的类型检查失败。预期的功能,得到了承诺。

如何处理?

1 个答案:

答案 0 :(得分:2)

该属性不接受Promises-仅同步函数。将您的异步函数包装在同步包装器中,或将函数的异步部分放入另一个函数中:

<paginate v-model="page" :page-count="pageCount" 
  :container-class="'pagination'" 
  :click-handler="clickCallback(page)" prev-text="‹" next-text="›">
</paginate>

...
data: {
    page: 1
},
methods: {
    clickCallback: function(page) {
    ...
    this.asyncFunction(param1,....);
    ...
  }
  asyncFunction: async function(p1) 
  { 
    ...
  }
...