Angular $scope not set after factory returned data
<p>I have an Angular app with a factory and a controller:</p>

<pre><code>.factory('dogeFactory', ['$resource', function ($resource) {
    var dogeResource = $resource("https://dogechain.info/api/v1/address/balance/:address");
    return {
        balance: function(address){
            return dogeResource.get({address: address}).$promise
            .then(
                function(data){ 
                    return data.balance;
                }
            );
        },
    }
}])

.controller('TwoController', function($scope, dogeFactory){
    $scope.balance = dogeFactory.balance('D8EyEfuNsfQ3root9R3ac54mMcLmoNBW6q').then(
    function(data){
        console.log(data);
        return data;
    });
</code></pre>

<p>The <code>console.log(data);</code> in the controller shows the correct data, but when I call <code>{{balance}}</code> in the view, it shows <code>{}</code>.</p>

<p><a href="https://jsfiddle.net/neptune001/rmvhsuc1/" rel="nofollow">Here is the issue on jsfiddle</a></p>

<p>Why <code>$scope.balance</code> isn't set properly with the data?</p>