Búsqueda de sitios web

ecmascript 6 - TypeScript 1.5: Importación predeterminada de módulo ES6 de CommonJS 'export =' (¿solo problema de .d.ts?)


Estoy encontrando un problema con:

import moment from 'moment';

moment en sí es una función que es una exportación predeterminada de CommonJS, como se codifica aquí https://github.com/borisyankov/DefinitelyTyped/blob/master/moment/moment.d.ts:

interface MomentStatic {
    (): Moment;
    (date: number): Moment;
    ...
}
declare var moment: moment.MomentStatic;
declare module 'moment' {
    export = moment;
}

Lo siguiente no parece funcionar:

import * from 'moment';
// error TS1005: 'as' expected.
// error TS1005: 'from' expected.

import moment from 'moment';
// error TS1192: External module ''moment'' has no default export.

import {default as moment} from 'moment';
// error TS2305: Module ''moment'' has no exported member 'default'.

La sintaxis require todavía funciona... pero estoy tratando de evitar eso.

import moment = require('moment');

¿Pensamientos?

Respuesta #1

La sintaxis que estás buscando

import * as moment from "moment";

Artículos relacionados