在运行时制作小型组件

时间:2019-05-28 18:23:11

标签: vue.js datatables

我在使用JQuery DataTable时遇到问题。 我不得不使用该插件,因为由于项目要求,我没有其他选择。

所以问题是,我要向DataTable添加行,并且该行中有一列带有按钮HTML标记的列。现在,我想将一个单击处理程序绑定到该按钮。

dt.Rows.Add({
   column_1_data,
   column_2_data,
   "<button @click='itsVueTime'>MyButton</button>"
});

这里dt是DataTable的实例。现在的问题是@click无法正常工作。我知道Vue无法渲染它,这就是为什么它不起作用的原因。

在这种情况下是否可以绑定点击事件?

1 个答案:

答案 0 :(得分:0)

在不了解更多上下文的情况下,我会建议采用这种方式

在具有要使用的方法的组件中,可以像这样公开该组件。 (我使用了mount,但是您也可以使用其他生命周期方法,例如created

  mounted() {
    window.app = this;
  }

然后您就可以使用

<button onclick="app.holler()">Say Hello</button>

您也可以像这样公开只想使用的功能

  mounted() {
    window.itsVueTime = this.itsVueTime;
  }