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>
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)