Si encuentras alguna parte que no entiendes puedes dejarnos un comentario y haremos todo lo necesario de ayudarte rápidamente.
Solución:
¿Cómo importar *.json?
Como ya se respondió, necesita Typescript> = 2.9 y la siguiente configuración en tsconfig.json
:
"resolveJsonModule": true,
"esModuleInterop": true,
"module": "commonjs"
Pero hay restricciones:
- Debe compilar a CommonJS
- Todos sus JSON importados deben residir bajo el
"rootDir"
Desafortunadamente, el "rootDir"
es muy a menudo una carpeta bajo package.json como ‘./src’ y las cosas fallarían.
Asi que:
¿Cómo importar paquete.json? Puede require
eso:const pjson = require('../package.json')
;
Si usa npm.start: no necesita:
Los campos de package.json se agregan a npm_package_ prefix. Entonces, por ejemplo, si tuviera “name”:”foo”, “version”:”1.2.5″ en su archivo package.json, entonces los scripts de su paquete tendrían la variable de entorno npm_package_name establecida en “foo”, y el npm_package_version establecido en “1.2.5”. Puede acceder a estas variables en su código con process.env.npm_package_name y process.env.npm_package_version, y así sucesivamente para otros campos.
Desde TypeScript 2.9 puede importar archivos JSON como se describe aquí: documentación de typescriptlang 2.9#json, para esto necesita habilitar la opción “resolveJsonModule” en su tsconfig.json.
Necesita la versión 2.9 de TypeScript en su proyecto:
npm i [email protected] --save
o yarn add typescript
si está creando los archivos mecanografiados desde la línea de comando con tsc
deberá instalar la última versión de mecanografiado globalmente:
npm i -g [email protected]
o yarn global add typescript
si está construyendo su proyecto con webpack
y webpack-dev-server
tienes que asegurarte de que json
Los archivos están alojados en el webpack-dev-server
contexto como static archivos E incluso si los hospedaste, no puedes import
json en el entorno web como este, necesitaría cargar el json
archivo con un ajax
solicitar y analizar la respuesta con JSON.parse
.
exportaciones npm package.json
attributes como env vars con el prefix npm_package_
como se describe en los documentos de npm
Entonces, si está usando npm, puede obtener la versión como process.env.npm_package_version