我有以下代码尝试使用dojox/charting/action2d/Tooltip
:
require([
"dojox/charting/Chart",
"dojox/charting/themes/Claro",
"dojox/charting/plot2d/MarkersOnly",
"dojox/charting/plot2d/Columns",
"dojox/fx/easing",
"dojox/charting/action2d/Tooltip",
"dojox/charting/axis2d/Default",
"dojo/ready"
], function(Chart, Theme, MarkersOnly, easing, Tooltip, Columns, Default, ready) {
ready(function(){
var chart1 = new Chart("chartArea");
chart1.setTheme(Theme);
chart1.addPlot("budget", {type: "MarkersOnly"});
chart1.addPlot("actual", {type: "Columns", gap: 3, animate: { duration: 300, easing: dojox.fx.easing.linear}});
//add the axis (both x and y) below
chart1.addAxis("x",{labels: [
{value:1, text: "01 - AXA"},{value:2, text: "02 - MR"},{value:3, text: "03 - CT"},{value:4, text: "04 - XP WH"},
{value:5, text: "06 - XP RF"},{value:6, text: "07 - XPC"},{value:7, text: "09 - ECS"},{value:8, text: "10 - XPU"}],
rotation:-90,
font: "normal normal bold 12pt Arial"
});//end adding axis to the chart
chart1.addAxis("y", {vertical: true, font: "normal normal bold 12pt Arial"});
chart1.addSeries("Series 2", [80,80,80,80,80,80,80,80,80,80,80,80,80], {plot:"budget"});
//chart1.addSeries("Series 1", [73,71,78,93,70,,,83,100,,,], {plot:"actual"});
chart1.addSeries("Series 1", [{y:75, tooltip:"custom"},{y:71},{y:78},{y:93},{y:70},{y:83},{y:100}], {plot:"actual"});
var tip = new Tooltip(chart1, "default");
chart1.render();
});//end of DOJO ready
});//end function chart stuff
和DOJO给了我以下错误:
Uncaught TypeError: object is not a function
我可以弄清楚问题出现的原因,特别是因为我发现了多个以这种方式处理问题的例子。有谁有任何想法?
答案 0 :(得分:2)
您的依赖项列表和回调参数列表不匹配。
require([
"dojox/charting/Chart",
"dojox/charting/themes/Claro",
"dojox/charting/plot2d/MarkersOnly",
"dojox/charting/plot2d/Columns",
"dojox/fx/easing",
"dojox/charting/action2d/Tooltip",
"dojox/charting/axis2d/Default",
"dojo/ready"
], function(Chart, Theme, MarkersOnly, Columns, easing, Tooltip, Default, ready) { /* ... */ });
请注意参数的不同顺序:Columns
位于MarkersOnly
之后。
根据您的参数订单,Tooltip
指向dojo/fx/easing
模块并向您提供您所描述的错误。