2016-12-05 4 views
0

私のEmberアプリケーションでは、money.js外部libを追加しようとしています。私はそれをバウアーでインストールし、ember-cli-build.jsapp.import('bower_components/money.js/money.js');を追加することで成功しました。Ember外部jsとグローバル

money.jsは、私のアプリ全体で利用可能なグローバル変数fxを定義します。

components/purchase-form.js: line 41, col 29, 'fx' is not defined.

Ember docs状態::のようなアプリケーションを構築しながら、しかし、私は多くのJSHintエラーを受け取る

を一般的には、アプリケーションオブジェクトは、唯一のグローバル変数です。アプリケーション内の のすべてのクラスは、 Ember.Applicationインスタンスのプロパティである必要があります。最初の役割はグローバル 名前空間です。

私はちょうどjsHintのエラーを回避するには、グローバル

答えて

1

を挙げることができますあなたはjsHintを幸せにする可能性があります:

  1. /* global fx */ファイルごとのグローバルにアクセスする前に
  2. のセクションに.jshintrcのセクションを追加すると、@ kumkanillamは答えました。

グローバルとして依存関係にアクセスしたくない場合は、それをシムにすることができます。 Ember-cliはベンダーシム・ジェネレータを提供しています。ember generate vendor-shim money.jsその後、importをモジュール内で使用できます。

このトピックは、ember-cli docsで詳しく説明されています。

0

とともにLIBのこの種をインポートする適切な方法は何か不思議に思うあなたapp.import Aの場合は、fxグローバル変数

{ 
    "predef": [ 
    "document", 
    "window", 
    "-Promise", 
    "fx" 
    ] 
} 
+0

私はそれを使用しますが、私の質問はより徹底的な答えが必要です。 tnx – masciugo

+1

@masciugoこの答えは適切です。唯一の問題は、ファイルのスコープ内で定義されていないグローバル( 'fx')を使用しているため、警告メッセージです。 – locks

+0

kumkanillamは本当のことを言ってくれて助けになりましたが、私はこのタイプのlibをそのglobal__と共にインポートする正しい方法です。私はシムを使用して終了しました。 – masciugo