-
Notifications
You must be signed in to change notification settings - Fork 314
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Import com Typescript #212
Comments
Boa noite @denniscm , tudo certo? Entre a versão Como tenho pouca experiência com TS é provável que deixei algo escapar, consegue nos ajudar? 🙏 😬 cc: @marcusmaialima |
Boa noite @lucianopf e @denniscm Então, nas versões 4.0.4 era possível sim fazer dessa forma que você colocou, mas com as atualizações não é mais possível pois você tem que importar o módulo diferente se for utilizar o Angular. Fiz uns testes aqui pra ver o que estava ocorrendo e achei uma solução. Faz o import com require que vai atender teu problema, segue ai um exemplo que fiz no codesandbox: Espero que tenha ajudado a resolver o seu problema! :) |
Obrigado @lucianopf e @marcusmaialima! Fiz o procedimento como o Marcus orientou e funcionou certinho! Após fazer os procedimentos do Marcus, tive que fazer a seguinte instalação:
Depois, tive que ir até o meu arquivo tsconfig.app.json do meu projeto e adicionar nele dentro de "compilerOptions":
Pronto, após isso eu reiniciei o Angular e consegui fazer a chamada igual o Marcus fez com facilidade usando o require. Muito obrigado pela orientação! |
Boa tarde @lucianopf e @denniscm :) Conforme o relato, o problema foi resolvido, se quiserem, já pode fechar a issue :) Um abraço e até! 👍🏻 |
@marcusmaialima é normal imports funcionarem em React (no formato import from) e não funcionarem no Angular? |
Olá pessoal identifiquei o problema utilizando o framework NestJS com typescript, ele tem uma estrutura bem parecida com a do Angular, existe a possibilidade de termos uma solução melhor que instalar o @types/node? |
Depende de como o tsconfig de quem usa, como o react que pode ser importado via defaults ou não. |
É eu consegui usar normalmente o pacote mas não utilizando o import |
Você poderia colar o código aqui? Quando clico no link aparece "página indisponível; erro". |
Pessoal estou tentando seguir as soluções apresentadas aqui, mas sem sucesso. Sempre recebo esse erro:
Criei um mínimo exemplo verificável: import cep, { CEP } from 'cep-promise'
const cepData = cep('05010000').then((cep: CEP)=> {
console.log(cep)
}); tsconfig.json {
"compilerOptions": {
"target": "es6",
"lib": ["esnext", "dom"],
"module": "commonjs",
"moduleResolution": "node",
"strict": true,
"jsx": "react",
"allowJs": true,
"sourceMap": true,
"inlineSources": true,
"types": ["node"],
"allowSyntheticDefaultImports": true,
"experimentalDecorators": true,
}
} Quem quiser testar esta configuração on-line, aqui está o link: https://replit.com/@felintodev/NavyViolentRelationaldatabase |
Depois de várias pesquisas, encontrei uma solução 🥳 tsconfig.json "esModuleInterop": true, https://stackoverflow.com/questions/56238356/understanding-esmoduleinterop-in-tsconfig-file Código final: import cep, { CEP } from 'cep-promise'
console.log(cep)
const cepData = cep('05010000').then((cep: CEP)=> {
console.log(cep)
}); |
When using Typescript, you need to enable esModuleInterlop to use the defaults, if you don't want to do that, you need to import { default } from "module", with esmodule activated you simple do: import myModule from "module"; |
Utilizando com Node (14.16.1) + Typescript, essa solução não funcionou. Único workaround possível foi utilizando o require, mas não acredito que seja uma solução final para o problema, visto que em teoria deveria funcionar com o import também.
|
O erro persiste aqui ainda. Mesmo alterando o tsconfig para Usando no backend (NodeJS/NestJS). |
Eu fiz o teste com o Node v10 e realmente não notei isso. Como a @LarissaGuder comentou na última versão do Node realmente não funciona. Talvez isso ajude no diagnóstico para descobrir onde está o problema. https://replit.com/@felintodev/NavyViolentRelationaldatabase#index.ts |
Poderia enviar seu TS config e um exemplo usando? |
Identifiquei alguns problemas com a definição de tipos da lib. Vou ver se corrijo e subo essa semana! |
Meu caro o link que enviei acima foi exatamente isso que pediu. |
@bearkfear alguma novidade? Em Adonis 5 quando em dev funciona, mas quando buildado o erro cep_promise_1 continua. Conseguiram solucionar ou tem que se virar com o require? Tô usando Node >14 e a versão 4.1.1 |
Mestre, to transcrevendo a lib para typescript de fato, não tenho uma data exata para terminar e nem sei se os administradores vão aceitar uma mudança tão grande, mas, qualquer coisa eu deixo como uma lib paralela. |
cep-promise-ts 🚀 |
Boa noite pessoal, tudo certo? Abri um PR (#230) para resolver o problema de importação com typescript. Abraço galera. |
Olá pessoal,
Gostaria de uma orientação para realizar o import com Angular 11 (Typescript).
Eu não tinha nenhum problema em alguma versões anteriores do cep-promise (4.0.3).
Porém agora nessas versões recentes está me apresentando um erro na hora realizar o import do cep-promise.
Já tentei das seguintes formas:
Erro apresentado no console do Navegador:
Outra tentativa foi:
Erro apresentado pelo Typescript:
Vocês saberiam como me orientar para resolver esse problema?
Muito obrigado.
The text was updated successfully, but these errors were encountered: