我需要在不使用另一个NPM包的情况下向我的JSON添加注释,所以我想将module.exports =添加到我的JSON文件的开头,这样它就变成了一个CommonJS模块(有一个普通的JS对象),我可以完全以同样的方式使用它。我在做这件事的时候有什么需要知道的吗?
发布于 2020-09-20 02:30:31
你当然可以这样做:
const data = require('myfile.json');在文件中使用JSON数据:
{"someProp": "someValue"}或者,你可以这样做:
const data = require('mfile.js');在文件中这样做:
module.exports = {"someProp": "someValue"};一个是模块文件。一个是JSON文件。它实际上取决于您希望它是什么,或者是否有任何其他客户端希望它是这样或那样。虽然CommonJS模块可以包含更多类型的数据、注释等.因为JSON对里面的内容有很大的限制。如果您遵循适当的格式规则,两种方法对于核心数据都会很好地工作。
如果您想要向数据中添加Javascript注释,那么您不能在JSON中这样做,所以您需要将它变成一个模块,这样做没有什么具体的缺点。
注意,为了使require()自动解析JSON,它必须有一个.json文件扩展名。为了将其解析为Javascript CommonJS模块,它必须没有.json文件扩展名。
https://stackoverflow.com/questions/63974313
复制相似问题