es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Ag Grid React aplica la transacción asíncrona de la API “applyTransactionAsync” para reemplazar todos los valores de columna en lugar de las columnas pasadas a la actualización.

¿Cómo puedo retener los valores de la columna que no se pasó a la actualización de applyTransactionAsync en ag-react grid?

Paso 1: Agregar una nueva fila

gridApi.applyTransactionAsync({add: {id:1, col1:1, col2:2, col3:3}});

Paso 2: Actualizar el col1

gridApi.applyTransactionAsync({update: {id:1, col1:10}});

Paso 3: Actualizar el col2

gridApi.applyTransactionAsync({update: {id:1, col2:9}});

Resultado de los datos de la fila de AG Grid

{id:1, col2:9}

Resultado esperado

{id:1, col1:10, col2:9, col3:3}
Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para conservar los valores de la columna no pasados a la actualización de applyTransactionAsync en ag-react grid, puedes usar la propiedad deltaRowDataMode del objeto gridOptions. Configurar deltaRowDataMode en true asegurará que cada transacción solo incluya las celdas actualizadas y todas las demás celdas conservarán sus valores anteriores.

    Aquí tienes un ejemplo de código:

    const gridOptions = {
      deltaRowDataMode: true,
      // ... otras opciones de la cuadrícula
    };
    
    // Agregar una nueva fila
    gridApi.applyTransactionAsync({ add: { id:1, col1:1, col2:2, col3:3 } });
    
    // Actualizar col1
    gridApi.applyTransactionAsync({ update: { id:1, col1:10 } });
    
    // Actualizar col2 
    gridApi.applyTransactionAsync({ update: { id:1, col2:9 } });
    
    // Obtener los datos de la fila
    const rowData = gridApi.getDisplayedRowAtIndex(0).data;
    console.log(rowData); // Salida: { id: 1, col1: 10, col2: 9, col3: 3 }
    

    Aquí, configurar deltaRowDataMode en true asegura que las actualizaciones posteriores solo incluyan las columnas modificadas y las otras columnas conserven su valor anterior. La salida final después de aplicar las actualizaciones es la salida esperada con los valores de todas las columnas.

Comments are closed.