0

値を localstorage の空の srting にプッシュすると、firebase から値を取得しています。修正方法をプッシュします。

私のコード:

    var app = angular.module("bucksbucketapplication", ['firebase', 'ngStorage']);
app.controller("bucksbucket_orders", function ($scope, $firebaseArray, $firebaseObject, $http, $localStorage) {
    var fbvalues = new Firebase("https://qwertyuiop.firebaseio.com/values");
    $scope.syncfromfbvalues = $firebaseArray(fbvalues);
    $scope.$storage = $localStorage.$default({
        "orders": []
    });
    $scope.data = $localStorage.orders;
    $scope.cloneItem = function (syncfromfbvalues) {
        $scope.$storage.orders.push({
            "price": syncfromfbvalues.id
        });
    }
});

そして私のエンドコードの前に:

<html ng-app="bucksbucketapplication">

<head>
    <script src="angular.min.js"></script>
    <script src="firebase.js"></script>
    <script src="angularfire.min.js"></script>
    <script src="ngstr.js"></script>
    <script src="script.js"></script>

</head>

<body ng-controller="bucksbucket_orders">

         <li ng-repeat="message in syncfromfbvalues">{{message.greens}} <button class="btn btn-primary" data-ng-click="cloneItem(syncfromfbvalues)">to local</button></li>
</body>

</html>

私のプランカーのデモ

4

3 に答える 3

0

非同期呼び出しには promise を使用します。あなたの例にいくつかの変更を加えました。非同期操作のため、メッセージ オブジェクトは未定義です。promise を追加したので、これで処理されます。

作業例: http://plnkr.co/edit/I1Dyn0NmuLMDRYyS8ABU?p=preview

                $scope.getMessages = function () {
                var arr, fbvalues = new Firebase("https://qwertyuiop.firebaseio.com/values");
                arr = $firebaseArray(fbvalues);
                arr.$loaded().then(function (msg) {
                    console.log('Mymsg', msg)
                    return $scope.message = msg;
                });
            };
于 2015-10-08T10:24:57.263 に答える