Skip to content

Latest commit

 

History

History
58 lines (45 loc) · 1.61 KB

outputJson.md

File metadata and controls

58 lines (45 loc) · 1.61 KB

outputJson(file, object[, options][, callback])

Almost the same as writeJson, except that if the directory does not exist, it's created.

Alias: outputJSON()

  • file <String>
  • object <Object>
  • options <Object>
    • spaces <Number> | <String> Number of spaces to indent; or a string to use for indentation (i.e. pass '\t' for tab indentation). See the docs for more info.
    • EOL <String> Set EOL character. Default is \n.
    • replacer JSON replacer
    • Also accepts fs.writeFile() options
  • callback <Function>
    • err <Error>

Example:

const fs = require('fs-extra')

const file = '/tmp/this/path/does/not/exist/file.json'

// With a callback:
fs.outputJson(file, {name: 'JP'}, err => {
  console.log(err) // => null

  fs.readJson(file, (err, data) => {
    if (err) return console.error(err)
    console.log(data.name) // => JP
  })
})

// With Promises:
fs.outputJson(file, {name: 'JP'})
.then(() => fs.readJson(file))
.then(data => {
  console.log(data.name) // => JP
})
.catch(err => {
  console.error(err)
})

// With async/await:
async function example (f) {
  try {
    await fs.outputJson(f, {name: 'JP'})

    const data = await fs.readJson(f)

    console.log(data.name) // => JP
  } catch (err) {
    console.error(err)
  }
}

example(file)