2017-06-26 11 views
1

Google APIを使用してlib.protoからlib.jsを生成しました。 Typescriptでは、私はdeclare var lib: any;と一緒に使っています。私の問題は、それが唯一の宣言なので、browserifyはlib.jsを無視するということです。tsifyでtypescriptとprotobuf.jsを束ねる

lib.jsを適切な場所にbundle.jsに追加する方法はありますか?

私tsifyコマンド:

browserify -p tsify src/main.ts > bundle.js 

私のTSconfig:

{ 
    "compilerOptions": { 
    "declaration": false, 
    "noImplicitAny": true, 
    "target": "ES6", 
    "removeComments": true, 
    "module": "commonjs", 
    "sourceMap": true, 
    "rootDir": "src", 
    "moduleResolution": "node" 
    } 
} 

私階層:

root 
    src 
     main.ts 
     lib.proto 
     lib.js 
     lib.d.ts 
    bundle.js 
    index.html 
    package.json 
    tsconfig.json 

なステートメント:

declare var lib: any; 
let p = lib.deserializeBinary(data); 

lib.d.ts

+0

バンドルに含まれる '.d.ts'ファイルに関連付けられた' .js'ファイルを持つことができます。あなたの設定の詳細( 'tsconfig.json'、tsifyオプション、ディレクトリ構造など)を質問に含めることなく、これに答えることはできません。 – cartant

+0

ご協力いただきありがとうございます!私は質問を更新しました。 – FlugRost

+0

'import'文と' .d.ts'も含めることができますか? – cartant

答えて

1

問題は、libの型だけを宣言することです。すべてのモジュールローダーは、一度もインポートしていない場合は、libをバンドルしません。

lib変数を使用する前に、ちょうどrequire('./lib.js');を配置してください。それは動作するはずです。

+0

require( "lib.js")またはrequire( "lib")がbrowserifyエラーで終了する:「エラー: '/ PATH/src'から 'lib.js'モジュールを見つけることができません」 – FlugRost

+0

「忘れてしまった」./ " – FieryCod

+0

ありがとう、それでした。 – FlugRost

関連する問題