2016-04-25 12 views
1

私のコントローラでclickイベントを使用する必要があります。 networkEventsはangular-versusjsディレクティブで作成され、個々のノードのclickイベントをトリガーするにはコントローラーでそのイベントが必要です。コントローラからvis.js networkEventsを取得する

これは私が使用しているコードスニペットですが、動作するように見えるん:

$scope.networkEvents = { onload:function(network){ alert("Clicked"); } } 

おかげで、

をここでは私のplunkerです。

答えて

1

index.htmlを

あなたはVIS-ネットワークディレクティブのあなたのイベントの属性を設定していないので、私はあなたが意味を考えるように見えます:

<vis-network data="data" options="options" events="networkEvents" height="100%"></vis-network> 

角度-vis.js

また、vis-networkディレクティブ(行151)のonloadコールバックでは、グラフをonload関数に渡していますが、定義されていません。 (多分代わりにネットワークことになっている?):上記の変更により

// onLoad callback 
if (scope.events != null && scope.events.onload != null && 
    angular.isFunction(scope.events.onload)) { 
    scope.events.onload(network); 
} 

script.js

は、オンロード機能が期待通りに動作するようです。あなたはすでにあなただけnetworkEventsに追加する必要があり、クリックイベントを取得するには、イベントを添付するforeachループを設定しているので、オブジェクト:

$scope.networkEvents = 
{ 
    onload: function(network){ 
     alert("I'm loaded"); 
    }, 
    click: function(clicked) { 
     alert("id: " + clicked.nodes[0] + " was clicked"); 
    } 
} 
+0

lcywizard00 @おかげで、それだけで魅力のように働いた多くのことを – Ntokozo

関連する問題