Не находит файл js при запуске функции nodejs (module.exports) из другой функции



  • Добрый день, на форуме не нашел ответа на мой вопрос. Возможно баг в программе.
    Создаю текущий скрипт nodejs в котором вызываю функцию "Test":

    await require("../Test")();
    

    Так же создаю функцию "Test" в которой вызываю функцию "Test2":

    module.exports = async function(){
        console.log('Скрипт Test найден');
        await require("../Test2")();
    
    }
    

    И функцию "Test2":

    module.exports = async function(){
        console.log('Скрипт Test2 найден');
    }
    

    Получается, что у меня функция вложена одна в другую, в логи пишет следующее:

    [156699531] [10:20:43] Поток №1 : Скрипт Test найден
    [156699531] [10:20:43] Поток №1 : Error: Cannot find module '../Test2'
    

    Они нормально вызываются, если модули "await require" вставлять в текущий скрипт, вызов из функции не работает, менял путь, но не помогает. Подскажите, как правильно указать путь к файлу и вообще предусмотрен запуск функции из функции? Заранее спасибо.

    Снимок.JPG



  • Неужели никто не использует вложенные функции? Или просто нет решения? Баг?



  • @Sergey_yu Просто надо прикладывать пример проекта, по картинкам гадать мало кто хочет.



  • @Sergey_yu В общем вот пример project.xml . Чтобы понять почему так найдите директорию embedded и посмотрите на реализацию работы с node.js



  • @UserTrue Огромное спасибо



  • посмотри где у тебя находится file
    напиши в файле такое

    console.log('cwd: ', __dirname)
    console.log('cwd: ', __filename)

    если не хочешь заморачиваться просто сделай отдельный проект с нодой


Log in to reply