为什么pivottable.js不能在Meteor项目中工作?

时间:2016-01-06 09:35:38

标签: jquery dom meteor pivottable.js

pivottable.js就像魅力一样,但不是最基本的流星项目。 有html:

<body>
  <div id="output"></div>
</body>

js(考勤变量已定义且一切在非流星项目中有效):

$('#output').pivot(attendance,
  {
    rows: ["group", "trainer", "client"],
    cols: ["came"]
  }
);

在Meteor项目中,pivot.js按原样放置在客户端/兼容性文件夹中,加载顺序正确:jquery&gt; pivot.js&gt;我的js代码。得到错误:

pivot.js:949

Uncaught TypeError: Cannot read property 'hasChildNodes' of undefined
$.fn.pivot @ pivot.js:949
(anonymous function) @ sandbox.js:20
(anonymous function) @ sandbox.js?64df4e0c48aa567cada8bd4c28bd682ed2d9ab36:41

1 个答案:

答案 0 :(得分:0)

流星模板的工作方式略有不同。运行时,DOM尚未呈现。为了实现这一点,您必须在该模板呈现的回调中加载依赖于模板内的DOM的任何外部库。在这种情况下:

Template.body.rendered = function() {
$('#output').pivot(attendance,
  {
    rows: ["group", "trainer", "client"],
    cols: ["came"]
  }
);
}