Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 节点_模块上的配置文件_Javascript_Node.js_Npm - Fatal编程技术网

Javascript 节点_模块上的配置文件

Javascript 节点_模块上的配置文件,javascript,node.js,npm,Javascript,Node.js,Npm,我创建了一个通用的npm包,其中包含我的业务逻辑,但我需要一些配置文件中的google云存储信息。如果我的包位于我的node_modules文件夹中,我如何访问此文件?有什么好的解决办法 结构如下: -config -google_storage_config -node_modules -package -serviceWhichNeedsThatConfig 嗨~您是否尝试过require var config = require('../../config/google_

我创建了一个通用的npm包,其中包含我的业务逻辑,但我需要一些配置文件中的google云存储信息。如果我的包位于我的node_modules文件夹中,我如何访问此文件?有什么好的解决办法

结构如下:

-config
  -google_storage_config
-node_modules
  -package
    -serviceWhichNeedsThatConfig

嗨~您是否尝试过
require

var config = require('../../config/google_storage_config');

根据您的文件夹结构,我们将假定您的配置路径为
。/../../config/google\u storage\u config
,因为需要sthatconfig的
节点\u模块/package/services应该始终位于根目录中


现在,要访问此配置文件中的任何变量,只需在需要sthatchconfig的
服务中包含以下代码即可

var config = require('../../../config/google_storage_config');
console.log(config.myVariable);

如果我这样要求,我就无法访问,我会收到以下错误消息:错误:找不到模块“/config/google\u storage\u config”你说得对!看起来
require()
使用了相对路径。看到我更新的答案。我必须回到5路,但它的工作!有更好的方法要求这样的文件吗?不幸的是,这是节点的require()的常见问题。阅读这篇伟大的文章,了解一些可能的解决方法-如果你觉得我的答案解决了你的问题,请将其标记为已接受的答案,以帮助将来可能有相同问题的其他人。这是一种不规则的模式。考虑将此配置包含在服务内;或者在服务初始化期间。问题是,配置文件对于不同的应用程序是不同的。我怎样才能解决这个问题呢?我用这个结构作为例子,但在这种情况下,它是有效的!谢谢