$ location在使用d3.js的AngularJS中不起作用
这是我第一次面对这个问题,不知道为什么。 我正在使用d3创建一个冰柱图表。 有一个点击事件触发并调用changePath()。 我看到控制台日志,这意味着我有权访问$ location.path,但是当我尝试设置它时,没有任何反应......不是新页面而是错误页面没有任何内容......如果我不通过角度更改路径我的路由器不会维护我正在寻找的范围......任何线索?
var parentCtrl = function($scope,$location){
$scope.makeBSC = function(){
var changePath = function(el){
console.log($location.path());
$location.path(el)
}
var width = 405,
height = 420,
color = d3.scale.category20c();
var vis = d3.select("#bscChart").append("svg")
.attr("width", height)
.attr("height", width);
var partition = d3.layout.partition()
.size([width, height])
.value(function(d) { return d.size; });
var json = data;
vis.data([json]).selectAll("rect")
.data(partition.nodes)
.enter().append("rect")
.attr("y", function(d) { return d.x; })
.attr("x", function(d) { return d.y; })
.attr("height", function(d) { return d.dx; })
.attr("width", function(d) { return d.dy; })
.attr("class",function(d){
if(d.isSel) return "rectBlue"
return "rectGray"
}).on("click", function(d){
changePath(d.goTo);
});
}
}
强迫症不会让我把这个问题'开放'。 所以,正如groner指出的那样...嗨,我想你会在这个问题中找到你的问题的答案:AngularJS $ location不改变路径
另外,有一点价值的广告。 检出这些包装d3的指令http://www.fullscale.co/dangle/
链接地址: http://www.djcxy.com/p/84195.html上一篇: $location not working in AngularJS using d3.js
下一篇: Linked Pie Chart using Flot 0.7 returns "undefined" links
