sql >> Base de Datos >  >> NoSQL >> MongoDB

¿Cómo concatenar varios resultados de mangosta en una matriz JSON para mostrar en DataTable?

Puede usar async.series() para ejecutar cada tarea. Cada tarea, p. getBranches() y getSerials() "devolverá" una matriz de datos. Cuando termine la serie, debería tener una matriz de matrices de datos, por lo que debe aplanarla.

async.series([
    function getBranches(done) {
        async.mapSeries(branch_name, function (item, done) {
            // FYI 'done' inside this function is not the same 'done' as outside the function
            // ...
        }, done);
    },
    function getSerials(done) {
        async.mapSeries(serial, function (r_serial_no, done) {
            // ...
        }, done);
    },
    // etc
], function (err, data) {
    // data should come back as multidimensional array
    // so you should only need to flatten it
    var finalJSON = [].concat.apply([], data);
});

Vea esta respuesta con respecto a aplanar una matriz de matrices en JavaScript.

Editar :nunca he usado async.concatSeries() antes, pero podría ser más corto