mattburns / exiftool.js

A pure javascript implementation of exiftool
MIT License
64 stars 13 forks source link

async/await version #26

Open vsimko opened 6 years ago

vsimko commented 6 years ago

Here is a async/await wrapper for the getExifFromLocalFileUsingNodeFs function. What do you think, is it worth including to the README.md file ?

/**
 * @param path
 * @returns {Promise}
 */
async function extractExif(path) {
  return new Promise((resolve, reject) => {
    exiftool.getExifFromLocalFileUsingNodeFs(fs, path, (error, exif) => {
      error
        ? reject(error)
        : resolve(Object.assign({file: path}, exif))
    });
  })
}

.. then inside your async code, you can write:

// inside an async function...
const exif = await extractExif('/path/to/my/file1.jpg')
mattburns commented 6 years ago

Promises are new to me (I don't write much JS) but looks good. Feel free to add to README.md. Thanks!