Búsqueda de sitios web

momentjs - typescript importación duplicada de 'moment'


Estoy usando momentjs en un proyecto de TypeScript/React. Actualmente tengo estas líneas en la parte superior de un archivo:

import * as moment from 'moment';
import { Moment } from 'moment';

donde Moment es el tipo de un momento, y moment es el propio objeto momento, por ejemplo:

let m: Moment = moment.now();

Ahora mi linter de TypeScript se queja: Se pueden combinar múltiples importaciones de 'moment' en una. (no-duplicate-imports)tslint(1).

Sin embargo, no puedo averiguar cómo hacer eso. No estoy seguro de cómo tener el * y Moment en la misma línea de importación...

Respuesta #1

Como sugirió Aluan Haddad, prueba a importar moment como exportación por defecto. Entonces tu importación se verá bien usando lo siguiente

import moment, {Moment} from 'moment';

En tu tsconfig.json, deberías tener allowSyntheticDefaultImports :true