1

ajax 呼び出しを行い、Angular の応答で '$scope.ticker' モデルを設定する方法を見つけることができないようです。基本的に、これは ajax 呼び出しを実行してティッカー (btc_usd、btc_eur、または btc_rur) の最終価格を取得します。

"$scope.last" は、選択されたティッカー ラジオ ボタンの最終価格です。

<label><input type="radio" name="currency" value="btc_usd" ng-model="currency"> USD</label>
<label><input type="radio" name="currency" value="btc_eur" ng-model="currency"> EUR</label>
<label><input type="radio" name="currency" value="btc_rur" ng-model="currency"> RUR</label>


$scope.ticker = quote.ticker($scope.currency).then(function(data){
    var last = data.ticker.last;

    $log.log('last', last);
    $scope.ticker = last;
    $scope.last = last;
});

app.factory('quote', function($http, $log) {
    return {
        ticker: function(currency){
            $log.log('ticker.currency', currency);
            //return the promise directly.
            return $http.get('/api/last/'+currency)
                .then(function(result) {
                    //resolve the promise as the data
                    return result.data;
                });
        }
    };
});
4

1 に答える 1