-1

I have return the function for getting all the parameter documents in express.js .i want to print the result outside the find function.how can get this done help me out

exports.show = function(req, res) {
var parameterObject = [];
var produtObject = [];
Parameter.find().exec(function (err, Parameters) {
    if(err) { return handleError(res, err); }
    parameterObject.push(Parameters);

  });

  Product.find().exec(function (err, Products) {
    if(err) { return handleError(res, err); }
    produtObject.push(Products);

  });
  console.log(parameterObject);
  console.log(produtObject);

}

now console i am getting empty [] object .

its me
  • 524
  • 6
  • 28
  • 62

1 Answers1

1

You can't access that outside since Parameter.find() is asynchronous but you can pass a callback which pass the variable parameterObject

exports.show = function(req, res) {
var parameterObject = [];

    function MethodName(callback) {
        Parameter.find().exec(function (err, Parameters) {
            if(err) { return handleError(res, err); }
            parameterObject.push(Parameters);
            return callback(parameterObject);
        });
    }

    MethodName(function(parameterObject) {
        console.log(parameterObject);
    })

}
Beginner
  • 4,118
  • 3
  • 17
  • 26
  • http://stackoverflow.com/questions/40737716/how-can-get-two-collection-documents-and-calculate-points-using-express-js @NewbeeDev – its me Nov 22 '16 at 09:10
  • can you check that sir – its me Nov 22 '16 at 11:27
  • help me out http://stackoverflow.com/questions/40931821/how-to-combine-two-collection-based-on-idtransectionid-using-node-js @NewbeeDev – its me Dec 03 '16 at 05:28