У меня есть этот скрипт, который мне нужно запустить с node
через CLI.
И этот скрипт имеет относительную ссылку на файл как:
files: '../functions/index.js',
Структура файлапримерно так:
> buildScripts
myScript.js
> functions
index.js
Когда я нахожусь в папке buildScripts
(на терминале), все работает:
>> C:\MyProjectRoot\buildScripts> node myScript.js
Но когда явнутри папки MyProjectRoot
выдается:
>> C:\MyProjectRoot> node buildScripts/myScript.js
Произошла ошибка: Ошибка: файлы не соответствуют шаблону: ../functions/index.js
ВОПРОС
Как мне запустить его из корневой папки myProject
и все же получить правильный путь?
Я не знаю, зависит ли это от скрипта / пакетов, которые я запускаю, поэтому вот полный исходный код скрипта:
myScript.js
Я использую пакет replace-in-file
для обновления импорта. В какой-то момент это будет скрипт postBuild .
const escapeStringRegexp = require('escape-string-regexp');
const fromPath = './src';
const fromPathRegExp = new RegExp(escapeStringRegexp(fromPath),'g');
const replace = require('replace-in-file');
const options = {
files: '../functions/index.js', // <----------------------------------
from: fromPathRegExp,
to: './distFunctions',
};
replace(options)
.then(results => {
console.log('Replacement results:', results);
})
.catch(error => {
console.error('Error occurred:', error);
})
;