Enterprise: データグリッド列フィルターはツリーグリッドではうまく機能しません

作成日 2018年11月23日  ·  19コメント  ·  ソース: infor-design/enterprise

私たちはデータカタログプロジェクトでツリーグリッドを実験してきましたが、それを使用できなくする多くの問題に遭遇しました。 4.11で問題が見つかりました。 それらのほとんどはids-enterpriseに関係している可能性が高いですが、私はそれらすべてをここに置いています。 これを携帯電話に書き込んで、来週必要に応じてスクリーンショットの例を追加できます。

  • [x] 1.動作:フィルターはトップレベルのツリーアイテムにのみ一致します。
    期待:フィルターはツリーの下位のアイテムと一致する必要があり、一致したアイテムと、コンテキストの親、祖父母などが表示されます~~

  • [x] 2.動作:行を子と一致させると、展開/折りたたみボタンが引き続き表示されますが、クリックしても何も起こりません。 また、インデントを伴う一般的な奇妙さを引き起こすこともありますが、これは来週再現しようとします。
    期待:親が一致する場合、すべての子を表示するように拡張可能である必要があります。 その子の1つも一致する場合、動作がどうあるべきかわかりません... ~~

  • [x] 3.動作:ツリーグリッドのフォーマットは誤解を招く恐れがあります。 子のインデントは、親の展開/折りたたみボタンによって生成されたインデントと一致し、同じレベルにあるかのように見えます。
    期待:兄弟要素のテキストはすべて一致するインデントを持っている必要があり、展開/折りたたみボタンはインデントを変更してはなりません

  • [] 4.動作:Angularコンポーネントを使用して展開/折りたたみボタンを使用して列にカスタムフォーマットを適用することは、ツリーを壊さずに実行できないようです。
    期待:カスタムフォーマットはツリーグリッドと一緒に可能であり続ける必要があります

[5] type

最も参考になるコメント

これをAPI設定として追加allowChildExpandOnMatch: boolean

allowChildExpandOnMatch === true

  • 親だけが一致した場合は、子ノードも追加します
  • 1つ以上の子ノードが一致した場合は、親ノードとすべての子ノードを追加します

allowChildExpandOnMatch === false

  • 親のみが一致した場合(無効|非表示|その他)+/-ボタン、子ノードの追加なし
  • 1つ以上の子ノードが一致した場合は、親ノードを追加し、一致する子ノードのみを追加します(現在のように)

全てのコメント19件

これをEPプロジェクトに移すべきだと思います。 動かしてくれませんか@clepore

私はあなたの問題に番号を付けたので、私はそれらに対応することができます。 また、これらをより適切に再現する方法も必要です。

  1. この問題は#437で修正されている可能性があります。http://4130-beta0-enterprise.demo.design.infor.com/components/datagrid/test-tree-filter.htmlで再テストできますか

  2. これを再現する方法が必要です。 #405に関連している可能性があります

  3. この例が必要です。

  4. これは、ツリーフォーマッターコードを完全にコピーし、そのバージョンにカスタマイズを追加した場合に可能になる可能性がありますhttps://github.com/infor-design/enterprise/blob/master/src/components/datagrid/datagrid.formatters.js #L368 -L378

他のものを見ていきますが、今は4に応答できます。Treeフォーマッターコードをコンポーネントにコピーしようとしましたが、展開/折りたたみボタン機能を提供するコードがボタンを見つけられませんでした。

Ok。 4.サブフォーマッターの概念を作成して、それを指定できるようにし、一部のフォーマッターではその部分をフォーマットできるようにする方がよいと考えていました。 ツリーフォーマッタのテキスト部分を分離するためのFx。

3は、ツリーグリッドの設計に固有の問題です。

2018-11-26 5

私の記憶から、これは最初の設計中に議論されましたが、「期待される」バージョンは私にはもっと読みやすいようです。 @kayiuhoはどう思い

1を修正することで2も解決したと思います。 もう一度エンタープライズで再現できたらお知らせします。

@tmcconechyは、視覚的な比較を見るだけで、「期待される」バージョンは視覚的な階層の観点からより理にかなっているように見えます。 さまざまな状態でさらに調査/テストして、パターンが任意のレベルで壊れているかどうかを確認できます。プロトタイプが役立つ可能性があります。

3は12月のスプリントでプッシュされました。

要約すれば

  1. 別の問題#437で修正されました
  2. 別の問題#437で修正されました
  3. @chrisfriedによってこのスプリントが修正され
  4. まだ問題

したがって、このチケットを分割する必要があります。 それでも@chrisfriedが必要な場合は、#4の新しい問題を作成してください。
その後、このチケットが修正のためにQAに移動されるため、後でこれを整理できます。 あなたがチケットを作った方がいいので、あなたの名前にそれがあります。 ありがとう!

親ノードに一致するフィルターを適用すると、動作番号2が引き続き発生します。 展開/折りたたみボタンが表示されますが、何もしません。
手順:

  1. https://4140-beta0-enterprise.demo.design.infor.com/components/datagrid/test-tree-filter.htmlにアクセス
  2. 「HMM」という単語を含むタスク列にフィルターが含まれています
  3. 最初の行を展開/折りたたんでみてください。何も起こりません。

@ deep7102この余分なケースを見ていただけますか?

現時点では、#2の最後の部分が機能しない理由は、その下に一致する子がないためです。 「期待値:親が一致する場合は、すべての子を表示するように拡張可能である必要があります」と表示されていることに気付きました。

たとえ子供たちが一致しなくても、それが子供たちに表示されるべきだと本当に思いますか? よくわかりませんが、これが正しい/許容できる動作であることに傾倒していますか?

私たちはどう思いますか? @EdwardCoyle @clepore @pwpatton @ deep7102 @brianjuan @chrisfried

デフォルトの検索動作については、依存する可能性があると思います。 たぶん、スイッチが正常になっている(allowChildExpandOnMatch)か何かです。

ランドマークでは、子が検索条件に一致しない場合でも一致するノードの拡張を許可する例があります(これを行うことができないため、デフォルトの検索/フィルターを使用せずに、このすべての動作を遅延読み込みして管理しますメモリー)。

これをAPI設定として追加allowChildExpandOnMatch: boolean

allowChildExpandOnMatch === true

  • 親だけが一致した場合は、子ノードも追加します
  • 1つ以上の子ノードが一致した場合は、親ノードとすべての子ノードを追加します

allowChildExpandOnMatch === false

  • 親のみが一致した場合(無効|非表示|その他)+/-ボタン、子ノードの追加なし
  • 1つ以上の子ノードが一致した場合は、親ノードを追加し、一致する子ノードのみを追加します(現在のように)

それはそれをカバーするように聞こえます-大きな変化ですか?

フィルターを追跡し、ノードと深さなどをフィルターする必要があることを考えている可能性があります

わかりました。後で新しい問題を作成することをお勧めします。 現時点では、これは完全には範囲内ではありません。
だから私は@brianjuanます

2番目の大きな変更を実装するための別のチケットを作成するのは良いことだと思います。

https://4140-beta0-enterprise.demo.design.infor.com/components/datagrid/test-tree-filter.htmlが他のすべての推奨動作で期待どおりに機能しているため、これを移動します。

新しい問題#1422を追加しました

このページは役に立ちましたか?
0 / 5 - 0 評価