AngularJSの下でhighStockチャートを作成したいと思います。いくつかのボタンでいくつかのチャートオプションを変更したいと思います。ただし、オプションを変更してもチャートは自動的に再描画されないようです。 highChartで動作するa threadに従ってみましたが、highStockでディレクティブを動作させることはできません。ここではa plunkerですが、時計はうまく起動されていますが、グラフをうまく再描画する方法はわかりません。Angularjsの下でhighStockチャートを自動的に再描画
.directive('highchart', function($parse, $timeout) {
return {
restrict: 'E',
template: '<div></div>',
replace: true,
link: function(scope, element, attrs) {
var config = $parse(attrs.config)(scope);
Highcharts.stockChart(element[0], config);
scope.$watch(attrs.watch, function(newVal) {
if (newVal) {
console.log("here" + JSON.stringify(newVal))
$timeout(function() {
Highcharts.stockChart(element[0], config);
}, 0);
}
});
}
}
})
助けてもらえますか?あなたはAPIのこのセクションから機能を使用する必要が更新すでにレンダリングされたチャートの
私はHighChartsに慣れていないけど、一つのことは、あなたが、これはこれはHighChartsを再描画するための正しい方法であるかどうかを確認することができますか?また、初めての設定やウォッチャーの設定は変更できません。 – Abhi
Angularとは関係なく、実際にはHighChartsに関連しているように見えます。私はそれを修正しようとしたが、ここで私の変更です:https://plnkr.co/edit/VubMRQUBJXqpaHmnPq4f設定を変更して、新しい選択項目に関して、チャートをクリアしてから再描画してみてください。 – Abhi
関連性があります:https://stackoverflow.com/questions/7880978/highcharts-jquery-destroy-and-rebuild-chart-with-original-options – Abhi