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";
