0

Firebaseを数ヶ月使用していますが、問題を説明する前に、angularjsとanfularfireと一緒になって素晴らしかったです。私は現在、ユーザが植物種を登録し、それらをインタラクティブな庭を作るためのアイテムとして使用するためのアプリ用の異なるコントローラを使用しています。angularjsを使用したfirebaseデータベースの保存に関する問題

$scope.example_function = function(i){//supposing 'i' is a string 
    $scope.element[e] = i //supposing that 'e' contains a string 
    $scope.database.$save() 
} 
:任意のコントローラからデータベースを保存するためには、私は変更を行うか、オブジェクトを追加したいときに、私はこのようにそれを行う$スコープ

var rootRef = firebase.database().ref(); 
$scope.database = $firebaseObject(rootRef) 

への参照を格納し

時々これは動作しますが、データベース内の既存のオブジェクトを編集するとき、または特定のオブジェクトに要素を追加するときには、ファイアベースを保存しないだけです。それはエラーや何かを投げていないので、本当にイライラしています。私は変更したいパスを削除して、新しい情報で再度保存しようとしました。また、私は各コ​​ントローラのデータベースへのローカル参照を試しましたが、誰もがこの作業をどのようにすることができますか?

また、私はかなりデータベースとアプリケーションの間の接続がうまくいることを確信しています、私は種によって情報を編集するか、画像を取得するためにURLを追加するときに問題があります。

答えて

0

データベース全体をスコープにバインドすることはお勧めしません。規模を拡大するのは非常に難しいでしょう。

refをリクエストして$firebaseObjectに送信すると、イベントを変更するために登録され、潜在的に巨大なデータベース全体の同期が開始されることに注意してください。あなたが経験している問題については

あなたが$scopedatabaseプロパティへのデータベース参照を結合しているが、あなたのexample_functionにあなたがelementプロパティに値を適用しているように、それが見えます。だから、あなたが探している修正は、次のようなものです:

function example_function(i) { 
    $scope.database.element = i; 
    $scope.database.$save(); 
} 
関連する問題