2016-11-01 28 views
1

私のtypescriptクラスにインポートする際に問題があります。typescriptで非相対パスを正しくインポートするにはどうすればよいですか?

// Error thrown here... 
import * as Foundation from 'foundation/foundation'; 

// This works fine, until I add the above import... 
export class HelloWorldScene { 
    constructor() { 
    console.log("...success..."); 
    } 
} 

私は一気WebPACKのタスクで私のためにそれをtranspileするTS-ローダーを使用して私のプロジェクトをビルドしようとするたびに、このエラーがスローされます:

stream.js:74 
     throw er; // Unhandled stream error in pipe. 
    ^
Error: [object Object] 

を私はそれがためにどのように私のためですほぼ確実ですライブラリをインポートしています。

+0

を役に立てば幸い相対インポートおよび非相対typescript info

diffはあなたがbaseUrlに設定がありますか? – Paarth

答えて

0

私は少し遅れますが、私は将来他の誰かになることができます。

ソリューション:この小さな例で

我々はreactjs typescriptですwebpack2を使用しますが、輸入を解決するためのベースURLとパスを示す

設定コンパイラは、一例で、非相対パスを使用して:ルートディレクトリにtsconfig.json P

のWebPACKで
{ 
    "compilerOptions": { 
    "outDir": "./dist/", 
    "sourceMap": true, 
    "noImplicitAny": true, 
    "module": "commonjs", 
    "target": "es5", 
    "jsx": "react", 
    "allowJs": true, 
    "moduleResolution": "node", 
    "baseUrl": "src", // URL FIX 'src/comp1' TO @import 'comp1' 
    "paths": { 
     "*": [ 
     "*", //Paths 
     "modules/*" 
     ] 
    } 

    } 
} 

我々はリゾルバに指定webpack2 config

resolve: { 
    extensions: [ 
     '.tsx', 
     '.ts', 
     '.json', 
     '.js', 
     '.jsx', 
     '.css' 
    ], 
    modules: ["node_modules", 'src'] 

} 

full example

結果:私はそれが誰か

enter image description here

関連する問題