2015-10-08 10 views
8

Per lo stack MEAN, sto imparando sulla funzione save() di Mongoose, che richiede una richiamata. La sua API states:Come funziona la richiamata di salvataggio di Mongoose?

Model#save([options], [fn]) 

Saves this document. 

Parameters: 

[options] <Object> options set `options.safe` to override [schema's safe option](http://mongoosejs.com//docs/guide.html#safe) 
[fn] <Function> optional callback 

Come faccio a sapere quali argomenti sono nella callback facoltativa? L'API solo fornisce un esempio:

product.sold = Date.now(); 
product.save(function (err, product, numAffected) { 
    if (err) .. 
}) 
The callback will receive three parameters 

err if an error occurred 
product which is the saved product 
numAffected will be 1 when the document was successfully persisted to MongoDB, otherwise 0. 

Quello che penso l'API deve dire circa il callback facoltativa è la seguente:

[fn] <Function> optional callback with this structure: 

    function(err, theDocumentToBeSaved, [isSaveSuccessful]) 

e può essere utilizzato come il seguente. Si noti che il secondo argomento, il documento, deve essere lo stesso documento che chiama il salvataggio. (Fammi sapere se non è il caso.)

documentFoo.save(function(err, documentFoo, [isSaveSuccessful]){ 
    if(err){ return next(err); } 

    if (isSaveSuccessful === 1){ 

     // documentFoo has been saved correctly 
     // do stuff with the saved documentFoo 
    } 
} 

Se la mia interpretazione è corretta, è che come i parametri di callback salvataggio dovrebbero sempre essere strutturata?

risposta

16

callback della funzione save accetta tre argomenti:

  • L'errore
  • Il documento che è stato salvato
  • Il numero di righe interessate

Gli argomenti sono elencati here

Si noti che il secondo argomento, il documento, deve essere lo stesso documento che sta chiamando il salvataggio

È possibile denominare gli argomenti tuttavia si desidera, non trasmetti contenuti in un oggetto o qualcosa di simile . È semplicemente un nome che vuoi usare per riferirlo al corpo della tua funzione.

Problemi correlati