From f92b9586c69dcf3d829d195717ea57ebc19aab5f Mon Sep 17 00:00:00 2001 From: sjones6 Date: Wed, 30 Aug 2017 21:04:14 -0400 Subject: [PATCH] Promisefy val --- lib/promise.js | 10 ++++++++++ promise-test.js | 20 ++++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 lib/promise.js create mode 100644 promise-test.js diff --git a/lib/promise.js b/lib/promise.js new file mode 100644 index 00000000..f0560962 --- /dev/null +++ b/lib/promise.js @@ -0,0 +1,10 @@ +var Gun = Gun || require('../gun'); + +Gun.chain.promise = function(field) { + var gun = this; + return new Promise(function(resolve, reject) { + gun.get(field).val(function(node, key) { + resolve(node, key); + }); + }); +}; diff --git a/promise-test.js b/promise-test.js new file mode 100644 index 00000000..d7d441b5 --- /dev/null +++ b/promise-test.js @@ -0,0 +1,20 @@ +var Gun = require('./gun'); +require('./lib/promise'); + +var gun = new Gun(); + +gun.get('mark').put({ + name: 'mark' +}) + +async function getField(field) { + var node = await gun.promise(field); + console.log(node); + return node; +}; + +setTimeout(async () => { + var mark = await getField('mark'); + console.log(mark); + process.exit(); +}, 100); \ No newline at end of file