如何在 D3 附加的 vue.js 对象上启用 v-on evnt

约翰·奥维龙

我正在使用 c3 构建图表,然后使用 d3 在该图表的顶部添加一个 div:

请参阅jsfiddle上的工作示例

var naviChart = d3
  .selectAll("#chart")
  .append("div")
  .attr("class", "hist-future-btn");
naviChart
  .append("div")
  .text("Hist")
  .attr("class", "hist")
  .attr(":v-on:click", "showHistChart");

即使代码生成正确(通过 Chrome 检查器检查):

<div class="hist" @click="showHistChart">Hist</div> 

该函数showHistChart未被调用。我将上面的行从 Chrome 检查器复制粘贴到我的 HTML 代码的底部,然后它就可以工作了。所以我们知道 d3 正确生成了代码但它没有启用 vue 事件

如何启用vue.js动态添加的对象d3.js

我找到了这个主题,有非常相似的问题,但它只回答 hot 以启用svg 元素上的事件并在评论中打开我的问题。

约翰·奥维龙

我在forum.vuejs.org上得到了答案,所以在这里分享:

@LinusBorg,Vue.js 核心团队成员说:

Vue 只能绑定到它从模板中知道的 DOM,所以答案是:不,这是不可能的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章