選択的にロードできるように、グラフの種類ごとに個別の js ファイルを作成した結果、さまざまな種類の HTML 5 グラフを表示しています。require.js について多くのことを聞いたので、試してみました。私はこれにかなり慣れていないため、それらを実装した方法が適切かどうかはわかりません..以下は、チャートを作成するために呼び出す関数です。
function buildChart(podObj) {
switch (podObj.PodAttributes.type) {
case "ColumnChart":
requirejs(["HTML5SpendDashboard/includes/js/views/column.chart.js"], function () {
var objChart = ColumnChart.getInstance();
onSuccessLoadChart(podObj, objChart);
});
break;
case "dataGrid":
requirejs(["HTML5SpendDashboard/includes/js/views/grid.js"], function () {
var objChart = DataGrid.getInstance();
onSuccessLoadChart(podObj, objChart);
});
break;
case "lineChart":
requirejs(["HTML5SpendDashboard/includes/js/views/line.chart.js"], function () {
var objChart = LineChart.getInstance();
onSuccessLoadChart(podObj, objChart);
});
break;
case "pieChart":
requirejs(["HTML5SpendDashboard/includes/js/views/pie.chart.js"], function () {
var objChart = PieChart.getInstance();
onSuccessLoadChart(podObj, objChart);
});
break;
}
}
function onSuccessLoadChart(podObj, objChart) {
objChart.BaseViewRef.Variables.ViewProperties = podObj;
objChart.Build();
}
これはrequire.jsを使用する適切な方法ですか? 現時点では、モジュラー パターンを使用するつもりはありませんでした。もう1つのことは、縦棒グラフの場合が繰り返される場合、require.jsがcolumn.chart.jsファイルを繰り返しロードし、ロードをスキップできますか?