1

我正在尝试将我编写的一些 d3.js 代码移植到 ruby​​ on rails 3.2 应用程序中。我似乎已经移植了所有东西,除了 rails 不会加载 d3.js,即使它加载了我所有其余的 javascript。

在 development.rb 我有:

  config.assets.compress = false
  config.assets.debug = true

我尝试通过 application.js 将其包含在内,并使用将其添加到我的视图中

  - content_for :javascript_include do
    = javascript_include_tag 'ems/reports/floor_logs/d3'

在这两种情况下,脚本标签都会正确包含在我渲染的源代码中

   <script src="/assets/d3.js?body=1" type="text/javascript"></script>

并且 Rails 服务器记录它以 200 Ok 呈现。

但是在控制台中它说 GET 失败。当我在浏览器中加载 js :3000/assets/d3.js 的 url 时,它会快速加载文件的文本,但会无限期地继续加载。

此外,如果我从 d3.js 获取代码并将其发布到我的另一个正常加载的 javascript 文件中,它会导致该文件有同样的问题。

4

1 回答 1

0

虽然我仍然不完全确定为什么我无法通过资产管道成功提供 d3js(可能与 https 有关),但我能够通过使用 d3js 的托管版本来让我的代码正常工作。

= javascript_include_tag '//cdnjs.cloudflare.com/ajax/libs/d3/3.0.8/d3.min.js'
于 2013-03-19T15:20:21.773 回答