set $scope on timeout callback doesn't work
HTML
<div ng-controller="MyCtrl">{{greeting}} {{data}}</div>
JavaScript
var myApp = angular.module('myApp', []);
myApp.controller('MyCtrl', function ($scope) {
$scope.greeting = 'init';
window.setTimeout(function () {
console.log('update greeting');
$scope.greeting = "hello"; // doesn't work here.
}, 3000);
})