Я хочу создать бот раздора, поэтому я хочу, чтобы мой файл main.js подключался к разладке и импортировал все файлы из папки с именем «add- ons ", например, я хочу, чтобы main.js импортировал mod.js, которые содержат все команды модерации без необходимости их импорта вручную и все еще используют функции и т. д., если это возможно, было бы здорово, если кто-то может помочьКак я могу импортировать все из определенной папки, чтобы использовать ее в файле Javascript
0
A
ответ
0
вы ищете fs.readdir метод, который считывает содержимое каталога:
const addonDir = './addons/';
const fs = require('fs');
const path = require('path');
var loadedAddons = {};
fs.readdir(addonDir, (err, files) => {
files.forEach(file => {
//either simply
require(path.join(addonDir, file));
//*OR* provide a contract for loading/unloading which allows hot loading of code
loadedAddons[file] = require(path.join(addonDir, file)).load();
});
})
+0
спасибо за ответ, я получаю сообщение об ошибке с этим высказыванием. Не могу найти модуль mod.js – KingCosmic
+0
'require' нужен путь модуля, который будет прописан. Код был изменен. –
0
я предполагаю, вы используете Node.js, так что здесь есть несколько возможностей.
- Создайте файл
addons/index.js
где экспортировать всю другую зависимость (через требует), то необходим файлindex.js
. - Использование
require-all
-package - Напишите пользовательский загрузчик с fs, который выполняет итерацию по файлам и требует их динамического использования. Отъезд
fs.readdir
для этого.
Вы используете Узел? – SimpleJ
Да, используя узел извините, я не упомянул, что – KingCosmic
Не делайте этого. Вы должны использовать 'require()'. – SLaks