Meteor 错误,未定义 Handsontable
Posted
技术标签:
【中文标题】Meteor 错误,未定义 Handsontable【英文标题】:Meteor error, Handsontable not defined 【发布时间】:2014-01-01 21:00:15 【问题描述】:我已经从大气中安装了 Handsontable 包,并且在我的应用程序中定义表格可以正常工作,除非我尝试创建自定义单元格渲染器。
定义表中的违规代码是此列定义:
type:
renderer: function(instance, td, row, col, prop, value, cellProperties)
Handsontable.TextCell.renderer.apply(this, arguments);
$(td).css(
background: 'yellow'
);
,
//format: '0, 0.00 $',
readOnly: true
每当我尝试像上面的 Handsontable.Textcell.renderer.apply 那样进行 Hansontable 调用时,Meteor 都会抛出此错误:
Deps afterFlush 函数的异常:ReferenceError: Handsontable is not defined
我确实读过 Handsontable 使用 Jquery 1.9,但 Meteor 与 1.8 捆绑在一起。这可能是个问题吗?
我在 Handsontable 中看到的自定义单元格渲染器的每个示例都与我所拥有的类似,所以我对问题所在非常迷茫。我还使用最新版本创建了一个自定义包 Handsontable,但这也无济于事。
希望有任何帮助。谢谢!
【问题讨论】:
【参考方案1】:这可能是 Handsontable 包中的一个错误。
这一行:https://github.com/olragon/meteor-handsontable/blob/master/lib/jquery.handsontable.full.js#L13
var Handsontable =
应该是
Handsontable =
在流星文件中是变量范围的。如果您使用var
关键字,则其他文件无法访问它。这是您收到Handsontable is not defined
错误的部分原因
您还必须通过在https://github.com/olragon/meteor-handsontable/blob/master/package.js#L6 之后添加以下行来导出它
api.export("Handsontable");
这样api就暴露在包外了。
我已经提出了一个拉取请求,因此包维护者需要接受它并在环境中更新包,然后您可以运行 mrt update
并使用您现在使用的代码。
如果您赶时间,您可以分叉包含更新的软件包并将其用作您的 Handsontable
软件包
https://github.com/olragon/meteor-handsontable/pull/1
【讨论】:
以上是关于Meteor 错误,未定义 Handsontable的主要内容,如果未能解决你的问题,请参考以下文章