2015-04-12 1 views
5

Я сталкиваюсь проблема с по умолчанию:машинопись 1,5: ES6 модуль импорта CommonJS «экспорта =» (.d.ts только вопрос?)

import moment from 'moment'; 

moment сама функция, по умолчанию CommonJS а экспорт, как и закодировано 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; 
} 

следующая не похоже на работу:

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'. 

Синтаксис require все еще работает ... но я стараюсь избегать этого.

import moment = require('moment'); 

Мысли?

+0

Ссылка дублировать? –

ответ

18

Синтаксис вы ищете

import * as moment from "moment"; 
+0

Работает для меня, спасибо! –

+1

Извините, это неверно, см. Http://stackoverflow.com/a/29598404/252087 –

+0

Спасибо. Я попросил уточнить: https://github.com/Microsoft/TypeScript/issues/2242#issuecomment-92218146 – basarat