Meteor JS 上的 nvd3 折线图:'addGraph' 错误
nvd3 Line Chart on Meteor JS: 'addGraph' Error
使用官方 nvd3 包 (https://atmospherejs.com/nvd3/nvd3)
我在 Template.rendered 块下有以下代码:
var formattedEarnedData = formatEarnedData(userEarnedDataSet);
nv.addGraph(function() {
var earnedChart = nv.models.lineChart()
.margin({ left: 25 })
.useInteractiveGuideline(true)
.transition()
.duration(350)
.showLegend(true)
.showYAxis(true)
.showXAxis(true);
earnedChart.xAxis
.axisLabel('Date')
.tickFormat(d3.format('d'));
earnedChart.yAxis
.axisLabel('Earned')
.tickFormat(d3.format('d'));
d3.select('#earned-charts svg').datum(
[{
key: 'Earned',
values: formattedEarnedData
}]
).call(earnedChart);
nv.utils.windowResize(earnedChart.update);
return earnedChart;
});
以下内容位于渲染块之外的 js 文件底部:
var formatEarnedData = function(dataSet) {
var earnedDataArray = new Array();
var groupedDates = _.groupBy(_.pluck(dataSet, 'progression'), function(date) {
return moment(date).format('MMM D');
});
_.each(_.values(groupedDates), function(dates) {
earnedDataArray.push({
date: dates[0],
total: dates.length
});
});
return earnedDataArray;
}
即使按照文档进行操作,我仍然收到此错误:
Cannot read property 'addGraph' of undefined
任何 nvd3 专家都可以阐明为什么会发生此错误吗?
提前致谢。
您需要恢复到 Meteor 版本 Meteor 1.1.0.2。工作魅力!
不需要恢复到 1.1.0.2,您只需将 nvd3 包恢复到 1.7.1。看这里:
使用官方 nvd3 包 (https://atmospherejs.com/nvd3/nvd3)
我在 Template.rendered 块下有以下代码:
var formattedEarnedData = formatEarnedData(userEarnedDataSet);
nv.addGraph(function() {
var earnedChart = nv.models.lineChart()
.margin({ left: 25 })
.useInteractiveGuideline(true)
.transition()
.duration(350)
.showLegend(true)
.showYAxis(true)
.showXAxis(true);
earnedChart.xAxis
.axisLabel('Date')
.tickFormat(d3.format('d'));
earnedChart.yAxis
.axisLabel('Earned')
.tickFormat(d3.format('d'));
d3.select('#earned-charts svg').datum(
[{
key: 'Earned',
values: formattedEarnedData
}]
).call(earnedChart);
nv.utils.windowResize(earnedChart.update);
return earnedChart;
});
以下内容位于渲染块之外的 js 文件底部:
var formatEarnedData = function(dataSet) {
var earnedDataArray = new Array();
var groupedDates = _.groupBy(_.pluck(dataSet, 'progression'), function(date) {
return moment(date).format('MMM D');
});
_.each(_.values(groupedDates), function(dates) {
earnedDataArray.push({
date: dates[0],
total: dates.length
});
});
return earnedDataArray;
}
即使按照文档进行操作,我仍然收到此错误:
Cannot read property 'addGraph' of undefined
任何 nvd3 专家都可以阐明为什么会发生此错误吗?
提前致谢。
您需要恢复到 Meteor 版本 Meteor 1.1.0.2。工作魅力!
不需要恢复到 1.1.0.2,您只需将 nvd3 包恢复到 1.7.1。看这里: