Игорь
Вот я в консоли вывожу
Игорь
И все гуд
Игорь
Игорь
Я не могу через точку их вывести на экран
Игорь
пишет undefined
Игорь
Уже всю ночь сижу
Игорь
Весь седой
Игорь
Вот мой контейнер где я пытаюсь данные получить
Игорь
Смешно, то что они приходят, но я или туплю в силу того что всю ночь работают или я даже не знаю
Rinat Valiullov
Подскажите по настройке ts.
Есть общая папка с файлами tsconfig.json package.json установленным локально typescript.
Я хочу запускать команду из этой общей папки - npm run build и получать в каждой подпапке (а их может быть 100) скомпилированный app.js в папке dist/
Примерная структура, чтобы понятней стало:
projects/
node_modules/typescript/
package.json
tsconfig.json (общий)
proj1/
dist/app.js - должен появиться
src/app.ts
proj2/
dist/app.js
src/app.ts
proj3/
dist/app.js
src/app.ts
proj4/
dist/app.js
src/app.ts
Rinat Valiullov
Сгенерировал стандартный конфиг, но он кладет скомпилированный файл не в папку dist/, а просто рядом с app.ts файлом в папке src/
А надо, чтобы создавал рядом с src/ папку dist/ и клал туда app.js. И так в каждой из 100 подпапок.
Что в tsconfig.json прописать, какое поле, чтобы достигнуть желаемого результата?
Daniil
Rinat Valiullov
{
"compilerOptions": {
"module": "commonjs",
"target": "es2016",
"jsx": "preserve",
"sourceMap": false
},
"exclude": ["node_modules", "**/node_modules/*"]
}
Daniil
и что outDir не помог?
Rinat Valiullov
если я задаю "outDir": "dist/"
то он в корне создает папки dist/proj1/
dist/proj2/ dist/proj3/ и так далее
Rinat Valiullov
а мне надо в подпапках рядом с src/ папку dist/
Daniil
не уверен что там нужен последний слеш
Rinat Valiullov
Rinat Valiullov
Daniil
а команду как запускаешь?
Rinat Valiullov
он даже папку dist не создает если заметил....
Daniil
есть подозрение что конфиг не используется
Rinat Valiullov
npm run build из корневой папки basics/
сама команда выглядит просто "build": "tsc"
Daniil
да это понятно а что в комманде?
Rinat Valiullov
Daniil
этого не достаточно
Rinat Valiullov
Daniil
tsc --build tsconfig.json
Daniil
нужно передавать конфиг в общем
Rinat Valiullov
Rinat Valiullov
Rinat Valiullov
Rinat Valiullov
где-то я что-то упускаю )
Rinat Valiullov
вот прям чувствую, что надо что-то незначительное поменять
Daniil
да явно какая-то мелоч
Rinat Valiullov
да явно какая-то мелоч
вот если бы мне из внутренних папок задавать пути в конфиге, типо такого "../../dist"
но у меня случай наоборот - надо указать во внутренние, а как это написать? может переменные есть, задаюшие корневой путь и подпути?
Rinat Valiullov
структуру папок нельзя менять, то есть то, что есть так и должно быть
Rinat Valiullov
щас попробую
Daniil
ща скину скрином
Rinat Valiullov
я с include тоже игрался
Daniil
Daniil
ну или попробовать через files
Daniil
думаю вебпак тут не поможет
Daniil
обычно должно работать
Rinat Valiullov
условие - никаких вебпаков, галпов и столронних пакетов типо npm-run-all
мне тут подсказали через js прописать - эдакий кастомный галп написать ) но мне что-то не нарвится такая идея
я просто уверен, что либо в npm либо в tsconfig.json такая возможность должна быть. Почему? Потому что кейс распрстраненный
Rinat Valiullov
пробовал - он в корневой хреначит, так как в скрипте в нпм файл конфига общий
Daniil
Daniil
а у тебя 2 app.ts ?
Rinat Valiullov
я сделал в нпм, прописав два скрипта и один общий, но это туповато )
повторюсь, если папок 100-1000, то в каждой прописывать - ну такое себе (
сейчас скрин скину
Daniil
вот насчет этого не уверен
Daniil
может конфликт имен
Daniil
как ты хочешь чтобы они легли в одну папку
Rinat Valiullov
Daniil
мне кажется поэтом и создаются оберки дирректорий
Rinat Valiullov
повторюсь что это не решение - так не напишешься еслди папок 1000 )
Daniil
просто ради теста дай другие имена
Anonymous
То ядрами то кеды ставим
все, дооптимизоровал свой самолет? На кудрявом волосе повисло все? А я говорил нормальное ядро сранью не назовут 😀
Rinat Valiullov
Daniil
да чтобы разные имена были
Rinat Valiullov
Rinat Valiullov
мне кажется имена поменять ничего не значит, ну ок попробую
Daniil
разница есть
Daniil
переимонование юзера в win чистый гемор, много доп действий нужно делать в том числе и в реестре
Rinat Valiullov
error in console
Specified 'include' paths were
'["src/**/*"]' and 'exclude' paths were '["node_modules","**/*.spec.ts"]'.
Daniil
странно это из доков
Daniil
https://www.typescriptlang.org/docs/handbook/tsconfig-json.html
Daniil
Daniil
блин ща сам сделаю на папках пример
Rinat Valiullov
блин ща сам сделаю на папках пример
давай, ну ты понял общую картину? чего я хочу?
никаких доп пакетов и вебпаков с галпами
при возможности магия с npm script тоже не нужна
Главный вопрос: может ли tsconfig.json решить такой кейс?
Daniil
я понял чисто ts буду делать
Rinat Valiullov
что имена не помогли?
я уже запутался )
в принципе условие, чтобы имена тоже одинаковые были - это типо как в реакт приложениях - различаются только названия проектов-подпапок, а файлы внутри должны быть с одинаковыми именами. Структура более понятная тогда, если проект разрастется до неимоверного количества подпапок
Anonymous
Daniil