2015-06-07 111 views
0

有誰知道如何使用Ts1.5導入外部模塊?導入外部模塊ts1.5

該文檔是不是真的清楚,它似乎是:

import { Reflector } from '../node_modules/reflect-metadata/Reflect'; 

不工作。 (反映的元數據暴露Reflector.ts和d.ts文件)

我不知道如何來處理導入外部模塊,即使它們是基於打字稿或ES6基於...

你能幫助我?

編輯:

[11:23:40] Compiling TypeScript files using tsc version 1.5.0 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(2 
5,24): error TS2304: Cannot find name 'Map'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(2 
5,37): error TS2304: Cannot find name 'Map'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(2 
5,58): error TS2304: Cannot find name 'Map'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(2 
6,24): error TS2304: Cannot find name 'Set'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(2 
6,37): error TS2304: Cannot find name 'Set'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(2 
6,58): error TS2304: Cannot find name 'Set'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(2 
7,28): error TS2304: Cannot find name 'WeakMap'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(2 
7,45): error TS2304: Cannot find name 'WeakMap'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(2 
7,70): error TS2304: Cannot find name 'WeakMap'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(4 
6,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(8 
3,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(1 
24,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(2 
05,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(2 
48,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(2 
85,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(3 
26,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(3 
51,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(3 
83,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(4 
19,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(4 
44,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(4 
76,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(5 
12,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(5 
37,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(5 
69,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(6 
05,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(6 
30,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(6 
62,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(6 
98,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(7 
22,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(7 
53,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(7 
88,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(8 
12,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(8 
43,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(8 
78,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(9 
03,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(9 
35,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(9 
71,21): error TS2384: Overload signatures must all be ambient or non-ambient. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(1 
039,99): error TS2304: Cannot find name 'Map'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(1 
269,40): error TS2304: Cannot find name 'Map'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(1 
291,59): error TS2304: Cannot find name 'Map'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(1 
327,30): error TS2304: Cannot find name 'Set'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(1 
337,59): error TS2304: Cannot find name 'Set'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(1 
374,46): error TS2304: Cannot find name 'WeakMap'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(1 
408,33): error TS2304: Cannot find name 'msCrypto'. 
[11:23:42] [tsc] > F:/nodejs/Sugar.io/node_modules/reflect-metadata/Reflect.ts(1 
409,21): error TS2304: Cannot find name 'msCrypto'. 
[11:23:42] Failed to compile TypeScript: Error: tsc command has exited with code 
:2 

回答

2

方式Reflect.ts進行編碼(作爲非出口內部模塊)意味着不能從它直接導入成員。您必須明確使用.d.ts文件並純粹爲其副作用導入庫:

/// <reference path="../node_modules/reflect-metadata/reflect-metadata.d.ts" /> 
import '../node_modules/reflect-metadata/Reflect'; 
+0

這樣做時出現錯誤。我編輯我的帖子向你展示 – mfrachet

+0

看來你的設置正在嘗試編譯'Reflect.ts'而不是使用已編譯的版本。你可以檢查你的構建設置以確保'node_modules'文件夾被排除。 –

相關問題