2016-12-30 6 views
0

私は独自のes RESTサービスを使用してデータを取得するプラグインを使用していて、timroesプラグインごとにaddメソッドを使用してフィルタをダッシュ​​ボードに追加できます:カスタムkibanaビジュアライゼーションプラグインに適用されたフィルタへのアクセス

https://github.com/Prazzy/tr-k4p-tagcloud/blob/master/public/tagcloudController.js

のよう

filterManager.add(
      // The field to filter for, we can get it from the config 
      //$scope.vis.aggs.bySchemaName['tags'][0].params.field, 
      $scope.fieldName, 
      // The value to filter for, we will read out the bucket key from the tag 
      tag.label, 
      // Whether the filter is negated. If you want to create a negated filter pass '-' here 
      null, 
      // The index pattern for the filter 
      $scope.vis.indexPattern.title 
     ); 

しかし、これによって、私はダッシュボードに私の可視化フィルタを適用することができるだろうが、私はまた私のすなわち上に他の可視化から適用するフィルタを適用する必要があります。だから、私が期待しているのは、今まで見つけられないフィルタを保存する変数 です。 最後に、ブラウザのURLからフィルタを抽出し、URLのフィルタの変更としてクエリを実行する方法がありますか?

+0

私はアクセスしようとしました var queryFilter = Private(require( 'ui/filter_bar/query_filter')); しかし、getAppFilters/getFilters/getGlobalFilters関数の空白リストがあります。 – user3152549

+0

同じリンク先kibanaフォーラム: https://discuss.elastic.co/t/accessing-filters-applied-for-custom-kibana-visualization-plugin/70252 – user3152549

+0

オハイオ州、私の最後の解決策を探している人コメントはうまくいくはずですが、私はコントローラの問題がいくつかありました。 – user3152549

答えて

0
import FilterBarQueryFilterProvider from 'ui/filter_bar/query_filter'; 

// Somewhere in your directive, service, or controller const 
queryFilter = Private(FilterBarQueryFilterProvider); 
queryFilter.getFilters(); // returns array of **pinned** filters 

依存性がfilterManager.add()機能を呼び出しvisualisationクリックからkibanaダッシュボードに適用さfilter_barフィルタを与えたオブジェクトを与えたkibanaプラグインのソースフォルダ(ui/filter_bar)とquery_filterからインポート文に注入します。

関連する問題