繁体   English   中英

读取 npm 包的文件

[英]Reading a file for a npm package

我创建了一个名为 test_package_cat 的 npm 包,它应该在开始时读取一个 json 文件(info.json)。 因此,index.js(主条目)和 info.json 处于同一级别。

当我在本地运行 index.js 时,我可以读取文件。

任何一个:

fs.readFileSync('info.json') 

或者

fs.readFileSync(path.resolve(__dirname, 'info.json')

工作正常。

但是,当我有另一个程序,一个使用该包的React页面时,它无法读取 json 文件。

 cat = require('test_package_cat')
 cat.meow()

当我在本地运行 index.js 时,如果我使用 console.log(__dirname),它会给我 C://......../myProject。 但是,在运行 React 应用程序时,console.log(__dirname) 只打印“/”,而当我尝试打印目录/文件时,它什么也没显示。

如何让我的 npm 包读取 info.json 文件?

编辑:经过更多搜索,我设法通过以下方式使其工作:

let info = require('./info.json')
console.log(JSON.stringify(info))

但仍然想知道如何使用“readFile”方式来做到这一点。

fs仅在 Node 运行时环境中可用。 它在浏览器的 JavaScript 运行时环境中不可用。 我很惊讶您没有遇到这种情况的错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM