Skip to content

Instantly share code, notes, and snippets.

@Sequoia
Last active August 5, 2021 12:11
Show Gist options
  • Save Sequoia/41a9c8be2ff2441357f41fddd3f68124 to your computer and use it in GitHub Desktop.
Save Sequoia/41a9c8be2ff2441357f41fddd3f68124 to your computer and use it in GitHub Desktop.
Get File Contents of Multiple Files as a Promise
import Promise from 'bluebird';
import {readFiles} from 'node-dir';
import {l} from './util';
/**
* @param {String} root path
* @param {Object} options see: https://www.npmjs.com/package/node-dir
* @return {Promise<String[]>}
*/
export default function getFiles(root, options){
let contents = [];
return new Promise((resolve, reject) => {
readFiles(root, options,
function(err, content, next) {
if (err) throw err;
contents.push(content);
next();
},
function(err, filenames){
if (err) return reject(err);
l('finished reading files');
resolve(contents);
});
});
}
@leap0x7b
Copy link

leap0x7b commented Aug 5, 2021

Why ES6

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment