Daianta da quantidade de funcoliadades que vemos thumbendo desro das linguagens de Programação, Consigo Também «Atualizamos» как RepainabiDades de Buscar Novas Formas de Melhorar, Automatizar, Limsar E CRAIR BOAS PRATICAS PARA QUE TENHAMOS UMA Applação Além De Melhor, Mais Escalável E CENAGETE.
No Mundo Onde Modullizar E Distribuir Traços de Código Virou Padrão ( NãO PodeMos Esquecer do Famso Caso da Biblioteca de 11 linhas que cusout umble recomea deavalmente grande! ), Натуральные моменты Vamos Ter Onde Teremos Uma Cadeia de Импорт
Seja de Conceptência Ou de Importação Местные Grande Demais, o que nao deenavelmente élgo negativo, mas o Проблема rocça quando pensamos em algo comum: Refortarar.
Вводящий
ImagineMOS UM CASO de Uso Onde Temos Uma árvore de Código Smarts похожи на Essa:
- SRC/
- конфигурация/
- константы
- компоненты/
- Hello.ts.
- Сервисы/
- Сервис
- Экраны/
- дома/
- home.screen.ts.
- дома/
- конфигурация/
- tsconfig.json.
O Arquivo SRC/Screens/Home/home.screen.ts
TêM O Seguinte Código:
import Hello from '../../components/hello'; import Service from '../../services/service'; import config from '../../config/constants'; class HomeScreen ...
NADA DE NOVO E SEM NOVIDADS, PORÉM SURCHANDO MAIS ATENCISAMETE OS Пути
DAS Linhas 1, 2 E 3, Estamos Importanto OS Arquivos de Forma Bastante Manuface, EM Caso de Muvermos Em Arquivo, OU UMA PASTA INTEIRA PARA OUTRO PONTO DA Applicação, Teremos Que Malue Maluemente Imintar CADA Arquivo, Mas Premine Ter UMA Appleação Grande, Com Bastante Arquivos, Зависимость … Ordenar umpíval Refactor Seria No Mínimo Cansativo E Pior Ainda, estressante.
Существую солюсуться?
MUITAS Soluções, Desde Auto-Imports, Pluckins Para Идентификационный экспорт/импорт, Integrações Para VSCode, Vim и т. Д. Porém São Ferramentas adicionais e que Зависимый DEM EMM Embersone Para Funciapar, Ideia NãO É Automatizar Somente, MAS SIM, Resolver O Phrounde de Escrever OU Sabre Exatamente O Caminho Exato Para Em Arquivo.
Para Solucionar Esse Проблема, Vamos Apenas Adicionar 2 Propriedades Doctro Do Nosso Arquivo tsconfig.json
:
"moduleResolution": "node", "baseUrl": "./src/"
Пропризна модулерезолюция
é como vamos diperiar a estratégia de importação, Onde Nesse Caso, OS Valores São: Узел
ou Классика
Sendo Esse, O Valor по умолчанию. QUANDO COM VALOR Узел
Как Importações Vão Seguir o Modelo База/относительная
Modelo Comumente Conhecido Quando Estamos Importanto Algo que exizee Dentro Da Pasta Node_Modules
Onde NãA NUTHITAMOS DEFIR DEFIR O node_modules/модуль
E SIM APENAS O NOME DO MODULO, SENTO ESSE BASE O BASE O DIRETORIO que que define Doctro Da Propriedade BaseUrl
Que определяют паста на пастах.
Нет Nosso Caso, O Valor de BaseUrl
Foi Configurado Defire Nossa Pasta SRC/
logo, TODA Importação que que vocize fizer Dentro da Allokação, deve tomar conta que vovê vai estar fazendo recistncia desde ./src/
E NãO Mais Doctro Do Real Path Do Arquivo que oestê edu edando. Vejamos o Mesmo Exemplo Do Código de home.screen.ts
Para entender melhor:
import Hello from 'components/hello'; import Service from 'services/service'; import config from 'config/constants'; class HomeScreen ...
Para CADA Arquivo que que orivera, o Compiler DO ShameScript Vai Assipran o Путь Escrito Como O Valor Relativo
Делать настоящий путь, Assim Collectionando O Modelo Comentado Antes База/относительная
Onde O Base É Tomada Doctro DO BaseUrl
EM Momento de CompiLação. Assim Apenas Conseguimos Resolver Flancea de Importação SEM Mais Ter Que SE PREOCUPAR SE VOCê CASSOU O ARQUIVO CERTO, OU NãO ESQUECEU UMA SEXêNCIA DE .../
Durante как Importações.
Até Próxima! 😁
Оригинал: “https://dev.to/felipesousa/using-relative-paths-with-typescript-4ka5”