ES6 Node.js导入然后重写文件?

时间:2016-07-24 01:20:50

标签: javascript json node.js

是否可以在node.js中导入JSON文件更新JSON中的一些属性,然后将新数据写回原位?

使用fs读取文件然后再次写入文件会更好吗?

我正在尝试使用JSON掀起一个愚蠢的简单原型数据库。

export const Users = [
  {
    username: 'Mike'
  }
]

export const Websites = [
  {
    owner: 'Mike',
    website: 'michael-aubry',
    build: {
        header: {
            component: 'header',
            navigation: 'standard'
        },
        main: {
            works: true,
            card: 1
        }
    }
  }
]

export const Works = [
  {
    owner: 'Mike',
    items: [
      {title: 'Dribbble Thanks', image_src: './dribbble_thanks.png'},
      {title: 'My WIP', image_src: 'bloomthat.png'},
      {title: 'Michael Angelo', image_src: 'https://d13yacurqjgara.cloudfront.net/users/371472/screenshots/2847709/studio-minted-case-studies-promo.jpg'},
      {title: 'Beautiful Art', image_src: 'https://d13yacurqjgara.cloudfront.net/users/4094/screenshots/2846992/drib106.jpg'}
    ]
  }
]

1 个答案:

答案 0 :(得分:1)

让我们以略微不同的方式思考这个问题。

我们无法使用import回写JSON文件,如果JSON文件不能永久更改,我们就不一定想回信。

如果您有一个读取JSON文件的模块,然后其他文件会导入模块以使用和操作该数据,该怎么办?

// data.json
{
  "users": ...,
  "websites": ...,
  "works": ...
}
// data.js
import data from './data.json'
export default data

现在您可以从data.js导入并修改这些值。