Soy nuevo en el mundo de TypeScript, por lo que tengo algunos problemas de configuración. El problema es que algunos métodos no funcionan aunque teóricamente deberían hacerlo. Actualmente, mi configuración de TypeScript se ve de la siguiente manera:
{ "compilerOptions": { "target": "ES6", "module": "commonjs", "esModuleInterop": true, "forceConsistentCasingInFileNames": true, "strict": true, "skipLibCheck": true, "noEmitOnError": true, "strictNullChecks": true, "lib": [ "dom", "ES2015.Collection", "ES2015.Iterable", "ES2016.Array.include", "ES2017.Object", "ES5", "ES6", ], } }Todo parece estar bien, además del hecho de que cuando intento usar, por ejemplo, el método Number.isInteger() o el método Array.entries(), se produce el siguiente error:
La propiedad 'isInteger' no existe en el tipo 'NumberConstructor'. ¿Necesita cambiar su biblioteca de destino? Intente cambiar la opción del compilador 'lib' a 'es2015' o posterior.
Lo mismo sucede con .entries(). ¿Alguien puede ayudar?
Lo siguiente es del patio de juegos de Typescript. Si sigue el enlace y alterna las opciones, puede averiguar lo que necesita. Parece que necesita más de ES2015, se muestran como errores cuando el objetivo es ES5.
console.log(Number.isInteger(1)) const arr = [1, 2, 3] console.log(arr.entries()) Producción "use strict"; console.log(Number.isInteger(1)); const arr = [1, 2, 3]; console.log(arr.entries()); Opciones del compilador { "compilerOptions": { "strict": true, "noImplicitAny": true, "strictNullChecks": true, "strictFunctionTypes": true, "strictPropertyInitialization": true, "strictBindCallApply": true, "noImplicitThis": true, "noImplicitReturns": true, "alwaysStrict": true, "esModuleInterop": true, "declaration": true, "experimentalDecorators": true, "emitDecoratorMetadata": true, "target": "ES2017", "jsx": "react", "module": "ESNext", "moduleResolution": "node" } }Enlace de juegos: proporcionado