Ruby on rails 3.2 用D3在Rails应用程序中显示hello world
我的index.html中只有以下内容:Ruby on rails 3.2 用D3在Rails应用程序中显示hello world,ruby-on-rails-3.2,d3.js,Ruby On Rails 3.2,D3.js,我的index.html中只有以下内容: <!DOCTYPE html> <meta charset="utf-8"> <body> <script src="d3/d3.v3.js"></script> <script> d3.selectAll("body").text("hi") </script> </body> d3.选择全部(“正文”)。文本(“hi”) D3的结构是这
<!DOCTYPE html>
<meta charset="utf-8">
<body>
<script src="d3/d3.v3.js"></script>
<script>
d3.selectAll("body").text("hi")
</script>
</body>
d3.选择全部(“正文”)。文本(“hi”)
D3的结构是这样的:
但是当我启动rails并转到localhost3000时,页面上没有显示任何内容。
我确信我在那里做了一些愚蠢的事情,但对D3来说是个新手,我试图找出我做错了什么。你在控制台上看到javascript错误了吗?您正在视图中使用相对路径。将文件移动到
/public/d3
文件夹,然后尝试:
<script src="/d3/d3.v3.js"></script>
实际上,如果您使用的是资产管道,那么应该将javascript放在assets
文件夹中
在gem文件中使用d3\u rails
gem(get):
gem'd3_轨道'
要使用资产管道,请添加到application.js
/=需要d3.v3
d3 javascript将自动包含在您的javascript
application.js
文件中。如果问题是您无法打印消息,可能是因为您没有指定在正文中附加“文本”以包含文本本身。
这是可行的(请注意,我从web上调用了d3.js库):
//宽度和高度
var w=600;
var h=250;
d3.选择全部(“主体”)
.append(“文本”)
.文本(“hi”);
你的Rails应用程序看起来像是在默认主页上运行吗?@summea:是的……如果我在正文中添加一个like段落标记并说“嗨”,它会在浏览器中显示“嗨”。可能它的“路径”不对?但我该如何给它路径?是的,先生,我也有assests文件夹,您能不能以使用Assets文件夹的方式更新您的答案?谢谢。我的资产文件夹在这里:app/assets/为什么rails应用程序中的d3默认会在公用文件夹中查找资产。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript" src="http://d3js.org/d3.v3.min.js"></script>
<style type="text/css">
</style>
</head>
<body>
<script type="text/javascript">
//Width and height
var w = 600;
var h = 250;
d3.selectAll("body")
.append("text")
.text("hi");
</script>
</body>
</html>