我有一个使用 highcharts 的 ruby on rails 应用程序。
在本地它就像一个魅力,但是当我将应用程序推送到 Heroku 时,Highcharts 停止工作,并且div
应该包含图表的标签显示为空。我什至用 Highcharts 示例之一(只有硬编码数据)对其进行了测试,但仍然没有。
我有一个使用 highcharts 的 ruby on rails 应用程序。
在本地它就像一个魅力,但是当我将应用程序推送到 Heroku 时,Highcharts 停止工作,并且div
应该包含图表的标签显示为空。我什至用 Highcharts 示例之一(只有硬编码数据)对其进行了测试,但仍然没有。
想通了:问题在于资产的预编译。原来highcharts没有预编译
添加 :
config.assets.precompile += ['rollover.js', 'highcharts.js'] 到 production.rb (我想 application.rb 应该也可以)
和
到布局文件。
(因为我希望所有 javascript 文件都在 application.jss 中编译,所以我的布局文件中只有 <%= javascript_include_tag "application" %>)
听起来 Highcharts 没有加载——要么是因为它没有被推送到 Heroku,要么是因为它没有被正确地提供。转到 highcharts.js应该所在的 URL,看看你得到的是 JavaScript 还是 404。
如果您可以毫无问题地访问 highcharts.js,那么问题很可能出在设置代码中。检查并查看是否将适当的变量加载到页面上(使用您正在测试的浏览器的 Web 开发人员工具)以及在加载页面时是否显示任何 JavaScript 错误。
使用惰性 highcharts gem。谷歌搜索了一个小时对我来说没有任何结果。最后,我从 Vendor 目录中复制了 highcharts.js 并将其粘贴到资产中。中提琴!