2017-10-15 193 views
0

我构建了@ masala/parser的类型系统,因此我可以根据需要编辑index.d.ts。Destructuration with imports and Typescript

作为一个用户,我可以这样做:

import masala from '@masala/parser' 
let {C, Stream, F} = masala; 

,但我不能做什么是ES2015的常见方式:

import {C, Stream, F} from '@masala/parser' 

TS2305:模块没有出口成员C(既不

我都试过流或F)把所有我能在index.d.ts

interface MasalaBundlesStatic{ 
    Stream?: StreamFactory, 
    C?: CharBundle, 
    F?: FlowBundle, 
    N?:NumberBundle, 
} 

declare const F:FlowBundle; 
declare const C:CharBundle; 
declare const Streams:StreamFactory; 
declare const N:NumberBundle; 
declare const MasalaBundles :MasalaBundlesStatic; 
export default MasalaBundles; 

回答

1

您需要单独导出成员。

interface MasalaBundlesStatic{ 
    Stream?: StreamFactory, 
    C?: CharBundle, 
    F?: FlowBundle, 
    N?:NumberBundle, 
} 

export const F:FlowBundle; 
export const C:CharBundle; 
export const Streams:StreamFactory; 
export const N:NumberBundle; 
export const MasalaBundles :MasalaBundlesStatic; 
export default MasalaBundles; 

或者类似的东西。

+0

其实是的,这就是写在错误信息中的内容:D –