Enterprise: Los filtros de columna de cuadrícula de datos no funcionan bien con la cuadrícula de árbol

Creado en 23 nov. 2018  ·  19Comentarios  ·  Fuente: infor-design/enterprise

Hemos estado experimentando con la cuadrícula de árbol en el proyecto del catálogo de datos y nos hemos encontrado con una serie de problemas que lo hacen menos utilizable. Se encontraron problemas en 4.11. Es probable que la mayoría de ellos tengan más que ver con ids-enterprise, pero los voy a poner todos aquí. Al escribir esto en mi teléfono, puedo agregar ejemplos de capturas de pantalla según sea necesario la próxima semana.

  • [x] 1. Comportamiento: el filtro solo coincide con los elementos del árbol de nivel superior.
    Expectativa: El filtro debe coincidir con los elementos que se encuentran más abajo en el árbol, mostrando el elemento coincidente, así como los padres, abuelos, etc. para el contexto ~~

  • [x] 2. Comportamiento: Al hacer coincidir una fila con los niños se sigue mostrando el botón expandir / contraer, pero hacer clic en él no hace nada. También a veces causa rarezas generales con sangría que intentaré reproducir la semana que viene.
    Expectativa: si un padre coincide, debería poder expandirse para ver todos los hijos. Estoy menos seguro de cuál debería ser el comportamiento si uno de sus hijos también es compatible ... ~~

  • [x] 3. Comportamiento: el formato de la cuadrícula de árbol es engañoso. La sangría de un hijo coincide con la sangría producida por el botón expandir / contraer en el padre, lo que hace que parezca que están en el mismo nivel.
    Expectativa: el texto de los elementos hermanos debe tener una sangría coincidente, el botón expandir / contraer no debe cambiar la sangría

  • [] 4. Comportamiento: No parece posible aplicar un formato personalizado a la columna con el botón expandir / contraer con un componente angular sin romper el árbol.
    Expectativa: el formato personalizado debería seguir siendo posible junto con la cuadrícula del árbol

[5] type

Comentario más útil

Agregue esto como configuración de api allowChildExpandOnMatch: boolean

allowChildExpandOnMatch === verdadero

  • si solo el padre tiene una coincidencia, agregue los nodos secundarios también
  • si uno o más nodos secundarios coinciden, agregue el nodo principal y todos los nodos secundarios

allowChildExpandOnMatch === falso

  • si solo el padre tiene una coincidencia, entonces (deshabilitar | ocultar | cualquier otra cosa) +/- botón y no agregar nodos secundarios
  • si uno o más nodos secundarios coinciden, agregue el nodo principal y solo los nodos secundarios coincidentes (como lo hace ahora)

Todos 19 comentarios

Creo que deberíamos trasladar esto al proyecto EP. ¿Puedes moverlo por mí @clepore?

He numerado sus problemas para poder responderlos. También necesitamos una forma de reproducirlos mejor.

  1. Es posible que este problema se haya solucionado en el n. ° 437, puede volver a realizar la prueba en http://4130-beta0-enterprise.demo.design.infor.com/components/datagrid/test-tree-filter.html

  2. Necesito una forma de reproducir esto. Podría estar relacionado con el # 405

  3. Necesito un ejemplo para esto.

  4. Esto podría ser posible si copia el código del formateador de árbol por completo y agrega sus personalizaciones a su versión https://github.com/infor-design/enterprise/blob/master/src/components/datagrid/datagrid.formatters.js # L368 -L378

Veré los demás, pero puedo responder a 4 ahora: intenté copiar el código del formateador de árbol en el componente, pero el código que da la función del botón expandir / contraer no encontraba el botón.

Está bien. Estaba pensando que sería mejor para 4. hacer el concepto de subFormatter para que pueda especificarlo y, en algunos formateadores, esa parte se puede formatear. Fx para aislar la parte de texto del formateador de árbol.

3 es un problema inherente al diseño de la cuadrícula del árbol:

2018-11-26 5

Por lo que recuerdo, esto se discutió durante el diseño inicial, pero la versión "esperada" me parece más legible. ¿Qué opinas @kayiuho ?

Creo que 2 también se resolvió solucionando 1. Si puedo volver a reproducirlo en Enterprise-ng, se lo haré saber.

@tmcconechy con solo mirar la comparación visual, la versión "esperada" parece tener más sentido en términos de jerarquía visual. Podría investigarse / probarse más a fondo con diferentes estados para ver si el patrón se rompe en algún nivel ... tal vez un prototipo podría ayudar.

3 fue empujado en el sprint de diciembre.

En resumen

  1. Se solucionó otro problema # 437
  2. Se solucionó otro problema # 437
  3. Fue arreglado este sprint por @chrisfried - ¡gracias!
  4. Sigue siendo un problema

Entonces tenemos que dividir este boleto. ¿Puedes hacer un nuevo número para el número 4 si aún lo quieres? @Chrisfried
Luego, podemos solucionar esto más tarde, ya que este ticket se traslada al control de calidad para las correcciones que realizó. Mejor si haces el boleto para que esté a tu nombre. ¡Gracias!

El comportamiento número 2 todavía ocurre cuando aplica un filtro que coincide con el nodo principal. Se muestra el botón Expandir / Contraer pero no hace nada.
Pasos:

  1. Vaya a https://4140-beta0-enterprise.demo.design.infor.com/components/datagrid/test-tree-filter.html
  2. Aplicar filtro Contiene en la columna Tarea con la palabra "HMM"
  3. Intente expandir / contraer la primera fila, no pasa nada.

@ deep7102 ¿Puedes echar un vistazo a este caso adicional?

Por el momento, la razón por la que la última parte del n. ° 2 no funciona es que no hay niños que coincidan debajo. Noto que dice "Expectativa: si un padre coincide, debería poder expandirse para ver todos los hijos".

¿Realmente creemos que debería mostrarse a los niños incluso si no coinciden? No estoy tan seguro, ¿y me inclino a que este sea el comportamiento correcto / aceptable?

¿Qué pensamos? @EdwardCoyle @clepore @pwpatton @ deep7102 @brianjuan @chrisfried ?

Para el comportamiento de búsqueda predeterminado, creo que podría depender. Tal vez un interruptor esté en orden (allowChildExpandOnMatch) o algo así.

En el punto de referencia tenemos un ejemplo en el que permitimos la expansión de un nodo coincidente incluso cuando los hijos no coinciden con los criterios de búsqueda (estamos cargando de forma diferida y administramos todo este comportamiento nosotros mismos sin la búsqueda / filtro predeterminado, ya que no podemos hacer esto en memoria).

Agregue esto como configuración de api allowChildExpandOnMatch: boolean

allowChildExpandOnMatch === verdadero

  • si solo el padre tiene una coincidencia, agregue los nodos secundarios también
  • si uno o más nodos secundarios coinciden, agregue el nodo principal y todos los nodos secundarios

allowChildExpandOnMatch === falso

  • si solo el padre tiene una coincidencia, entonces (deshabilitar | ocultar | cualquier otra cosa) +/- botón y no agregar nodos secundarios
  • si uno o más nodos secundarios coinciden, agregue el nodo principal y solo los nodos secundarios coincidentes (como lo hace ahora)

Parece que eso lo cubriría, ¿un gran cambio?

Podría estar pensando en la necesidad de rastrear el filtro y filtrar nodos y profundidades, etc.

Ok, sugiero que hagamos un nuevo número para más adelante. Esto no está totalmente dentro del alcance en este momento.
Así que sugiero que cerremos este problema al igual que

Creo que estamos bien para crear un boleto separado para la implementación de los grandes cambios para el número 2.

Ahora moverá esto Listo, ya que https://4140-beta0-enterprise.demo.design.infor.com/components/datagrid/test-tree-filter.html funciona como se esperaba para todos los demás comportamientos sugeridos.

Se agregó el nuevo número # 1422.

¿Fue útil esta página
0 / 5 - 0 calificaciones