找不到模块"./config.json"



我想让一个模块链接到node_modules文件夹外的config.json。问题是,我位于模块中的index.js无法考虑位于node_modules之外的config.json,你知道我应该怎么做吗?

我试过

let configFile = require('./config.json')

let configFile = require('.../config.json')

首先定位index.js文件到config.json文件的"距离">的位置非常重要。

例如,如果你的文件树是这样的:

cool-bot / modules / index.js
cool-bot / config.json

你可以有这样的index.js文件:

let configFile = require('../config.json')

../将查找当前文件夹的父级的父级。./将在当前文件夹中查找。

希望这对你有用。

好的,首先我有一个问题。为什么?为什么要将index.js放在node_modules中?

无论如何,您应该检查bot配置json文件离您的index.js有多远,例如:

v RootProjectFolder
⠀⠀config.json
⠀⠀v node_modules
⠀⠀⠀⠀v bot_folder
⠀⠀⠀⠀⠀⠀index.js

config.json的父文件夹是RootProjectFolder
index.js与RootProjectFolder相距3个文件夹
RootProjectFolder -> node_modules -> bot_folder -> index.js
因此您需要返回3个文件夹:
./=1个文件夹返回(文件所在的文件夹(
../=2个文件夹(文件所在文件夹的父文件夹(
../../=3个文件夹返回

所以在这种情况下,你会做:

const configFile = require('../../config.json');

我不能根据你的情况给出具体的答案,因为我不了解你项目结构。

最新更新