将全局变量添加到范围

doo*_*ent 0 angularjs

我正在尝试构建游戏的用户界面,AngularJS似乎是完美的.我的所有游戏都在全局变量中ig.ig看起来像这样:

ig = { money: 100, lives: 3, ... };
Run Code Online (Sandbox Code Playgroud)

我想补充ig.moneyig.live控制器的范围,所以它会自动更新的用户界面时,游戏内的变量的变化.

我试过了 :

$scope.$watch('ig.money', function() { $scope.money = ig.money; });
Run Code Online (Sandbox Code Playgroud)

但它不起作用.它说这ig是空的.有人能指出我正确的方向吗?谢谢

Whi*_*her 5

或者更有棱角的方式:

app.value('myGame',ig)
app.controller('AppController',[
    '$scope',
    '$window',
    function($scope,myGame) {
      $scope.ig = myGame;
    }
]);
Run Code Online (Sandbox Code Playgroud)

或者您可以将您的游戏置于常数或提供者或工厂或服务中

这取决于您选择更适合您需求的方式