169 похожих чатов

Реально ли заставить резолвиться импорты через симлинки?

6 ответов

26 просмотров
Aquinary- Автор вопроса

// shared/index.ts export interface A { a: string; } // server/index.ts import { A } from 'src/shared'; На выхлопе: Error: Cannot find module 'src/shared' Симлинк shared лежит в server/src Самое интересное, что в самом вебшторме всё резолвится и есть возможность "пройти" внутрь папки, как через системный проводник, так и через сам вебшторм

А зачем? Я что-то похожее пробовал и не особо чтобы вышло... Можно попробовать вместо симлинка сделать path alias на папку и использовать какой-то сборщик

Aquinary- Автор вопроса
Иван
А зачем? Я что-то похожее пробовал и не особо чтоб...

Есть как минимум 4 сервиса в docker-compose, которые разделяют общий функционал. Общие типы и т.д. Т.е. один shared конт, которые раздаёт всё общее И другие конты через симлинки подхватывают (должны были бы) Я пробовал разные варианты. Например, шарить сам волум, но тогда ts вообще ничего не видит Остаётся ещё два рабочих варианта: 1. Паковать всё в npm пакет или в репо закидывать 2. Через COPY физически копировать shared директорию в нужный конт И то и то по теореме Эскобара... поэтому хотелось бы как-то симлинками обойтись

Aquinary
Есть как минимум 4 сервиса в docker-compose, котор...

Оба хорошие варианты решения. Третий - мучаться с путями и сборщиками, может даже залезать внутрь typescript и ручками ресолвить пути

Aquinary- Автор вопроса
Иван
Оба хорошие варианты решения. Третий - мучаться с ...

Надо всё взвесить, у первых двух свои плюсы и минусы. А вот про третий хз, но пахнет бубном) Жаль, что через симлинки не получилось

Aquinary- Автор вопроса
Aquinary
Надо всё взвесить, у первых двух свои плюсы и мину...

"paths": { "@*": [ "src*" ], "@shared*": [ "src/shared*", "../shared*" ] } Опытным путём было высчитано, что проблема в самом вебшторме - если пробрасывать волумы, то всё "компилится", но вебшторм подсвечиваем место ошибкой Настройка "@shared" решает это. Первый элемент указывает на расположение shared папки внутри контейнера, тем самым давая возможность тсу нормально резолвить модули А второй элемент ссылается на реальную папку на хосте, тем самым успокаивая сам вебшторм

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Он в одиночку это дело запилил или была какая-то команда?
Aquinary
12
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Oh sorry did you want it in Gunter's chains?
Martin Rys
15
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта