問題タブ [google-closure-library]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2321 参照

python - Python で循環依存関係を検出する

クラスの_ResolveDependenciesメソッドが循環依存を検出できる理由がわかりません。requiresとand requiresDepsTreeの場合は状況を検出できるようですが、循環依存ではありません。abebe

0 投票する
2 に答える
614 参照

google-closure-library - Google の Closure Javascript ライブラリでサポートされているブラウザとデバイスは何ですか?

Android、Safari (iOs) などが Google Closure ライブラリでサポートされているかどうかはどこで確認できますか?

0 投票する
4 に答える
1705 参照

yui3 - クロージャーライブラリまたはYUI3

私はPython、djangoを使用してエンタープライズWebアプリケーションを設計しています。私が最終的に決定するのは、使用するjavascriptライブラリです。GoogleのクロージャーライブラリまたはYUI3の使用を考えています。開発のほとんどは、jQueryを使用しました。jQueryを使用して高速にコーディングできますが、エンタープライズでの使用には適していないようです。

YUI3はかなり良いようです。使用したいほとんどのウィジェットが含まれていますが、Closureライブラリはほとんど同じです。Closureライブラリのより良いオファーはClosureCompilerを持っていることですが、ClosureはYUI3よりもはるかに多くのコードを書く必要があるようです。YUI3のドキュメントもかなり良いです。

アプリケーションはWebデバイスとモバイルデバイスの両方を対象としているため、AndroidやiPhoneなどのモバイルデバイスでライブラリが破損することはありません。

もしあなたが私だったら、あなたはどのような決断をしますか?

0 投票する
3 に答える
16990 参照

javascript - 条件が満たされるまで JS を非同期に遅延さ​​せる

長時間実行される HTTP 要求を受信した後にのみレンダリングできるクラスがありChatRoomます (1 秒または 30 秒かかる場合があります)。したがってChatRoom.json、 null でなくなるまでレンダリングを遅らせる必要があります。

以下のコードでは、Closure Library のgoog.async.ConditionalDelay. それは機能しますが、これを行うためのより良い方法はありますか (おそらく Closure Library を必要とせずに)?

"while (json == null) { }" は同期的 (他のすべての JS 実行をブロックする) であるため、使用できないことに注意してください。

0 投票する
2 に答える
1811 参照

google-closure-compiler - console.time の使用

Google Closure Library とそのコンパイラを使用してアプリケーションを作成しています。値をデバッグするには、 を使用しますconsole.log()。これをコンパイルすると、次の例外がスローされますJSC_UNDEFINED_VARIABLE. variable console is undeclared at ...。このエラーを解決するには、window.console.log()代わりに使用する必要がありました。
関数にかかる時間も測定したいと思います。Firebug には 2 つの優れた機能がconsole.time(name)ありconsole.timeEnd(name)、それを非常に簡単に行うことができます。残念ながら、Closure Compiler はこれらの関数をサポートしておらず、次の警告がスローされますJSC_INEXISTENT_PROPERTY. Property time never defined on Window.prototype.console at ...。残念ながら、この警告を prepending で解決することはできませんwindow
ライブラリも見てみましたが、 goog.debug.Console には必要な機能がありません。
私が以前に使用した別の解決策は、次のようなものでした

非常に頻繁に使用する場合、これは少し多すぎるコードであり、2 つの機能を備えたバージョンが最適です。

これにより、開始と終了の間の MS が出力されます。しかし、前述のように、これはクロージャ コンパイラでは機能しません。window.console.time()これらの2つの機能をどのように使用できますwindow.console.timeEnd()か? それとも、 goog.closure が提供する別の解決策が見つかりませんか?

0 投票する
1 に答える
1005 参照

javascript - 画像ファイルを使用して goog.ui.Button のインスタンスを作成する

私は Google Closure ライブラリに比較的慣れていませんが、現在の障害は、(テキストではなく) 画像を使用してプログラムでレンダリングするボタンを取得することです。ボタンのコンテンツとして img タグを追加しようとしました:

ただし、空白のボタンはページに表示されますが、画像は表示されません。生成された HTML を調べると、コンテンツのないボタン タグが表示されます。

を指定するスタイル属性を追加することも検討しましたbackground-image。ただし、ボタン API を使用してこれを実現する方法は明確ではありません。

これを達成する方法についての考えや例はありますか? 助けに感謝します。

編集: Dave Paroulek の支援を受けてたどり着いた解決策は次のとおりです。

0 投票する
1 に答える
261 参照

closures - ドラッグした要素をGoogleクロージャーライブラリでグリッドにスナップ

お願いします、

Google Closure Libraryでドラッグ可能な要素を作成し、グリッドにスナップする方法は?

例:jQueryUIにはオプショングリッドがあります:

$(".selector").draggable({grid: [50, 20]});

0 投票する
2 に答える
1184 参照

google-closure-compiler - Google Closureでsoyutilsを使用する正しい方法は何ですか?

Google ClosureでGoogleClosureテンプレート(Soy)を使用しようとしています。

soyutils_usegoog.js指示に従ってユーティリティファイルを含めています。このファイルは、生成されたテンプレートで使用される多くのユーティリティ、特にを提供しますsoy.StringBuilder。作成方法は次のとおりです。

soyutilsファイルにはgoog.string.StringBuffer上記の数行が必要ですが、非コンパイルモードで実行すると、 soyutilsが実行されるStringBufferまでに存在するJSファイルがロードされないため、ランタイムエラーが発生します。

私が間違っていない限り、ClosureのJSファイルは、「必要な」名前空間にすぐにアクセスするべきではありません。タグは、現在のスクリプトの実行後にのみ追加される<script>ため(非コンパイルモード)、すぐに使用するとランタイムエラーが発生します。

soyutils_usegoog.jsつまり、の早期アクセスによるランタイムエラーをトリガーせずにロードするにはどうすればよいですかgood.string.StringBuffer

0 投票する
1 に答える
188 参照

javascript - コンポーネントのすべてのアニメーションを終了前に破棄できるようにする方法は?

ページ上の要素を選択すると、Json が要求され、 とgoog.fx.dom.FadeInAndShow使用してページ遷移のアニメーションが開始されますgoog.fx.dom.FadeOutAndHide

要素をクリックしてからすぐに別の要素をクリックすると、リクエストはキャンセルされ、最新のクリックからのデータが入力されますが、アニメーションは前のクリックから完全に終了していないため、着信が発生します。情報は、前のアニメーションによって影響を受ける可能性がありますEND

getAnimationsコンポーネントにアニメーションがあり、.destroy()終了する前にアニメーションを実行できるようなものがあるかどうか疑問に思っています。