Jshint: Agregar soporte para importaciones dinámicas

Creado en 30 mar. 2020  ·  5Comentarios  ·  Fuente: jshint/jshint

Usando Visual Studio Code 1.43.2

Extensión: "dbaeumer.jshint" usando la instalación global de jshint desde npm

JSHint instalado: 2.11. 0 @ npm

Comportamiento esperado: reconozca import() como una función.

Comportamiento real

JSHint no reconoce

import("module/path.mjs") //Returns Promise of export object

como una función y los tiros E053 y E021.

Esta función se utiliza en la importación de módulos para scripts que no terminan con ".mjs".
Se puede ver más información sobre en esta página de MDN.

No sé si esta función está en propuestas, solo funciona en los principales navegadores (Firefox, Chrome, etc.) y node.js.


Valores de configuración


No se usa el archivo .jshintrc, se usa una configuración de extensión global.

{
"jshint.lintHTML": true,
    "jshint.options": {
        "esversion": 9,
        "varstmt": true,
        "unused": true,
        "undef": true,
        "singleGroups": true,
        "eqeqeq": true,
        "freeze": true,
        "lastsemic": true,
        "leanswitch": true,
        "latedef": true,
        "maxdepth": 4,
        "noreturnawait": true,
        "nonbsp": true,
        "noarg": true,
        "maxparams": 3,
        "maxerr": 10,
        "maxcomplexity": 15,
        "node": true
    }
}
Proposal

Comentario más útil

¡Gracias por el informe! No hemos implementado soporte para importaciones dinámicas, pero planeamos hacerlo (definitivamente satisface nuestra política sobre nuevas funciones de idioma). Eso hace que esto sea más una solicitud de función que un informe de error, por lo que modifiqué un poco el título del problema, espero que no te importe.

Si a usted (oa cualquier otra persona) le gustaría intentar implementar esto, ¡con gusto lo guiaré!

Todos 5 comentarios

¡Gracias por el informe! No hemos implementado soporte para importaciones dinámicas, pero planeamos hacerlo (definitivamente satisface nuestra política sobre nuevas funciones de idioma). Eso hace que esto sea más una solicitud de función que un informe de error, por lo que modifiqué un poco el título del problema, espero que no te importe.

Si a usted (oa cualquier otra persona) le gustaría intentar implementar esto, ¡con gusto lo guiaré!

@jugglinmike Teniendo en cuenta que se trata de una propuesta de es2020, ¿cómo imagina que alguien pueda alternar esta función? Supongo que habría un esversion: 11 que supongo que requeriría que todas las demás propuestas de es2020 (fusión nula, encadenamiento opcional, etc.) también sean compatibles.

Puedo considerar implementar el apoyo para esta propuesta específica, ya que ayudaría bastante.

esversion: 11 suena bien, @almercier! Implementar todas las nuevas funciones del lenguaje es una gran empresa, y no esperaría que nadie se encargara de todo eso por sí mismo. Si desea centrarse en la expresión import , entonces podríamos abordar las otras funciones en paralelo (o publicar una versión con soporte parcial para la nueva edición de idioma).

Actualicé nuestro submódulo para Test262 para que tengamos una mejor cobertura de las nuevas funciones de idioma. También he creado una rama de seguimiento para una nueva versión menor ; ahí es donde deberíamos obtener nuevas funciones.

JSHint versión 2.13.0, lanzada hoy , incluye soporte para importaciones dinámicas. Asegúrese de actualizar su configuración para optar por la nueva función de idioma a través de esversion: 11 o posterior.

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

stefanuddenberg picture stefanuddenberg  ·  7Comentarios

strugee picture strugee  ·  8Comentarios

NemoStein picture NemoStein  ·  7Comentarios

ghost picture ghost  ·  5Comentarios

Daniel-Hug picture Daniel-Hug  ·  3Comentarios