私たちはデータカタログプロジェクトでツリーグリッドを実験してきましたが、それを使用できなくする多くの問題に遭遇しました。 4.11で問題が見つかりました。 それらのほとんどはids-enterpriseに関係している可能性が高いですが、私はそれらすべてをここに置いています。 これを携帯電話に書き込んで、来週必要に応じてスクリーンショットの例を追加できます。
[x] 1.動作:フィルターはトップレベルのツリーアイテムにのみ一致します。
期待:フィルターはツリーの下位のアイテムと一致する必要があり、一致したアイテムと、コンテキストの親、祖父母などが表示されます~~
[x] 2.動作:行を子と一致させると、展開/折りたたみボタンが引き続き表示されますが、クリックしても何も起こりません。 また、インデントを伴う一般的な奇妙さを引き起こすこともありますが、これは来週再現しようとします。
期待:親が一致する場合、すべての子を表示するように拡張可能である必要があります。 その子の1つも一致する場合、動作がどうあるべきかわかりません... ~~
[x] 3.動作:ツリーグリッドのフォーマットは誤解を招く恐れがあります。 子のインデントは、親の展開/折りたたみボタンによって生成されたインデントと一致し、同じレベルにあるかのように見えます。
期待:兄弟要素のテキストはすべて一致するインデントを持っている必要があり、展開/折りたたみボタンはインデントを変更してはなりません
[] 4.動作:Angularコンポーネントを使用して展開/折りたたみボタンを使用して列にカスタムフォーマットを適用することは、ツリーを壊さずに実行できないようです。
期待:カスタムフォーマットはツリーグリッドと一緒に可能であり続ける必要があります
これをEPプロジェクトに移すべきだと思います。 動かしてくれませんか@clepore
私はあなたの問題に番号を付けたので、私はそれらに対応することができます。 また、これらをより適切に再現する方法も必要です。
この問題は#437で修正されている可能性があります。http://4130-beta0-enterprise.demo.design.infor.com/components/datagrid/test-tree-filter.htmlで再テストできますか
これを再現する方法が必要です。 #405に関連している可能性があります
この例が必要です。
これは、ツリーフォーマッターコードを完全にコピーし、そのバージョンにカスタマイズを追加した場合に可能になる可能性がありますhttps://github.com/infor-design/enterprise/blob/master/src/components/datagrid/datagrid.formatters.js #L368 -L378
他のものを見ていきますが、今は4に応答できます。Treeフォーマッターコードをコンポーネントにコピーしようとしましたが、展開/折りたたみボタン機能を提供するコードがボタンを見つけられませんでした。
Ok。 4.サブフォーマッターの概念を作成して、それを指定できるようにし、一部のフォーマッターではその部分をフォーマットできるようにする方がよいと考えていました。 ツリーフォーマッタのテキスト部分を分離するためのFx。
3は、ツリーグリッドの設計に固有の問題です。
私の記憶から、これは最初の設計中に議論されましたが、「期待される」バージョンは私にはもっと読みやすいようです。 @kayiuhoはどう思い
1を修正することで2も解決したと思います。 もう一度エンタープライズで再現できたらお知らせします。
@tmcconechyは、視覚的な比較を見るだけで、「期待される」バージョンは視覚的な階層の観点からより理にかなっているように見えます。 さまざまな状態でさらに調査/テストして、パターンが任意のレベルで壊れているかどうかを確認できます。プロトタイプが役立つ可能性があります。
要約すれば
したがって、このチケットを分割する必要があります。 それでも@chrisfriedが必要な場合は、#4の新しい問題を作成してください。
その後、このチケットが修正のためにQAに移動されるため、後でこれを整理できます。 あなたがチケットを作った方がいいので、あなたの名前にそれがあります。 ありがとう!
親ノードに一致するフィルターを適用すると、動作番号2が引き続き発生します。 展開/折りたたみボタンが表示されますが、何もしません。
手順:
@ deep7102この余分なケースを見ていただけますか?
現時点では、#2の最後の部分が機能しない理由は、その下に一致する子がないためです。 「期待値:親が一致する場合は、すべての子を表示するように拡張可能である必要があります」と表示されていることに気付きました。
たとえ子供たちが一致しなくても、それが子供たちに表示されるべきだと本当に思いますか? よくわかりませんが、これが正しい/許容できる動作であることに傾倒していますか?
私たちはどう思いますか? @EdwardCoyle @clepore @pwpatton @ deep7102 @brianjuan @chrisfried ?
デフォルトの検索動作については、依存する可能性があると思います。 たぶん、スイッチが正常になっている(allowChildExpandOnMatch)か何かです。
ランドマークでは、子が検索条件に一致しない場合でも一致するノードの拡張を許可する例があります(これを行うことができないため、デフォルトの検索/フィルターを使用せずに、このすべての動作を遅延読み込みして管理しますメモリー)。
これをAPI設定として追加allowChildExpandOnMatch: boolean
allowChildExpandOnMatch === true
allowChildExpandOnMatch === false
それはそれをカバーするように聞こえます-大きな変化ですか?
フィルターを追跡し、ノードと深さなどをフィルターする必要があることを考えている可能性があります
わかりました。後で新しい問題を作成することをお勧めします。 現時点では、これは完全には範囲内ではありません。
だから私は@brianjuanとます
2番目の大きな変更を実装するための別のチケットを作成するのは良いことだと思います。
https://4140-beta0-enterprise.demo.design.infor.com/components/datagrid/test-tree-filter.htmlが他のすべての推奨動作で期待どおりに機能しているため、これを移動します。
新しい問題#1422を追加しました
最も参考になるコメント
これをAPI設定として追加
allowChildExpandOnMatch: boolean
allowChildExpandOnMatch === true
allowChildExpandOnMatch === false