2017-01-20 7 views
1

Googleクローズコンパイラを使用してシンボルをエクスポートすると、何か不足しています。私が達成したいのは、Javascriptライブラリを作成し、クライアントが使用できる機能だけをエクスポートすることです。Googleクローズコンパイラを使用してライブラリ内のJavascriptシンボルをエクスポートする

ドキュメントには、エクスポートする機能とプロパティで@exportアノテーションを使用するように指定されています。しかし、独自のコードベースで同じメソッドシグネチャでgoog.exportSymbolとgoog.exportPropertyの両方を定義する必要があることも記載しています。例えばので:

/** @export */ 
var DoSomething = (function() { 
}); 

goog.exportSymbol('DoSomething', goog.exportSymbol); 

私は閉鎖ライブラリをダウンロードし、それがgoog.exportSymbol機能が含まれているbase.jsファイルを含んでいます。

しかし、どのようにbase.jsを含めるのですか?すべての例は、それがWebページに含まれていることを示しています。しかし、私はWebページを望んでいないし、コンパイラはjavascriptコードで動作し、Webページでは動作しません。

答えて

0

フラグ--generate_exportsフラグを使用すると、コンパイラは、@exportの各出現に対して適切なgoog.exportSymbolまたはgoog.exportPropertyコールを追加します。このため、シンボルをコンパイルに含める必要があります。

コンパイルにbase.jsを含めるには、コードを渡す前に--jsフラグを使用してコンパイラに渡します。ここでは何も魔法はありません - それは単なるJavaScriptのライブラリです。

関連する問題