2016-07-13 14 views
1

Firebase Reactive Collection(Syncデータベース)をAurelia-Firebaseプラグインで動作させようとしています。私は、データベースへの参照を設定するには、次のコードを使用しています:エラー:コンテナがグローバル化されていない - 解決する方法?

// collections/table.js 

import {inject} from 'aurelia-framework'; 
import {ReactiveCollection} from 'aurelia-firebase'; 

export class TableCollection extends ReactiveCollection { 
    constructor() { 
     super('tables'); 
    } 
} 

と参照が機能しているかどうかを確認するために、次のコード:

// table-overview.js 

import {inject} from 'aurelia-framework'; 
import {TableCollection} from './collections/table'; 

@inject(TableCollection) 
export class TableOverview { 

    constructor(collection:TableCollection){ 
     alert(collection); 
    } 
} 

を自分のコードを実行すると、私は次の取得しますスタックトレース

------------------------------------------------ 
inner error: Error: Container has not been made global 
at Error (native) 
at TableCollection.ReactiveCollection (http://localhost:3000/jspm_packages/github/pulsarblow/[email protected]/collection.js:27:108) 
at new TableCollection (http://localhost:3000/src/collections/table.js!transpiled:25:87) 
at Object.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:334:14) 
at InvocationHandler.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:309:168) 
at Container.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:557:25) 
at StrategyResolver.get (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:145:37) 
at Container._get (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:502:41) 
at Container.get (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:491:28) 
at Object.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:339:33) 
at InvocationHandler.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:309:168) 
at Container.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:557:25) 
at StrategyResolver.get (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:145:37) 
at Container.get (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:494:23) 
at eval (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-templating.js:3899:73) 
at Error (native) 
at TableCollection.ReactiveCollection (http://localhost:3000/jspm_packages/github/pulsarblow/[email protected]/collection.js:27:108) 
at new TableCollection (http://localhost:3000/src/collections/table.js!transpiled:25:87) 
at Object.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:334:14) 
at InvocationHandler.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:309:168) 
at Container.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:557:25) 
at StrategyResolver.get (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:145:37) 
at Container._get (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:502:41) 
at Container.get (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:491:28) 
at Object.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:339:33) 
at InvocationHandler.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:309:168) 
at Container.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:557:25) 
at StrategyResolver.get (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:145:37) 
at Container.get (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:494:23) 
at eval (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-templating.js:3899:73) 
at new AggregateError (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-pal.js:20:13) 
at Container.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:559:15) 
at StrategyResolver.get (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:145:37) 
at Container._get (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:502:41) 
at Container.get (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:491:28) 
at Object.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:339:33) 
at InvocationHandler.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:309:168) 
at Container.invoke (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:557:25) 
at StrategyResolver.get (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:145:37) 
at Container.get (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-dependency-injection.js:494:23) 
at eval (http://localhost:3000/jspm_packages/npm/[email protected]/aurelia-templating.js:3899:73) 

私はこれ以上の私の頭を壊していると私は本当に誰かが私を助けることを願っています。

答えて

3

すぐに分かることは、使用しているプラ​​グインがほぼ1年古いです。 package.jsonファイルを見ると、最新のリリース候補ではなく、ベータ・アウレリアのライブラリを参照していることがわかります。

ここに表示されているエラーメッセージは、https://github.com/PulsarBlow/aurelia-firebase/blob/master/src/collection.js#L13です。依存性注入ライブラリの2つの異なるバージョンが使用されているため、コンテナが異なるため、インスタンスがありません登録された

正直言って、Firebaseを手動でインストールして、それをJspm経由でインストールすることでそれを使用します:jspm install firebaseはあなたのためにやるべきことです。

+0

私はリポジトリで問題を開いて、Aureliaがfirebaseと適切に統合されるまで角度に戻しました。ありがとうございました。 –

+0

角度を戻す必要はありません。プラグインを使わずにFirebaseに追加するのは簡単です。 –

+0

私はそうしようとしましたが、私の設定をどこに置くべきか、他のAureliaクラスでFirebaseインスタンスを "インポート"する方法を理解できません...あなたは私に手がかりを与えることができますか? :-) –

関連する問題