将JSON从PHP控制器传递到AngularJS控制器的最佳方法?

时间:2015-02-05 21:12:21

标签: javascript php json angularjs

我正在使用Angular JS和Yii2。在我的一个PHP控制器中,我需要将数据从后端传递到前端,所以我是json编码我的php数组并在视图中设置var,如下所示:

$script = "var projects = '".json_encode($projects)."';";
$this->view->registerJs($script, View::POS_END);

然后在我的Angular控制器中,我得到了如下的JSON数据:

app.controller('ProjectsController', ['$scope', function($scope, args){
   $scope.projects;    

   $scope.init = function(){
       $scope.projects = angular.fromJson(projects);
   };

   $scope.init();
}]);

我的问题是,这是一种好形式吗?是否有正确/错误的方法来处理带有Angular的页面加载数据?

干杯

1 个答案:

答案 0 :(得分:1)

我认为你需要做这样的事情

app.controller('ProjectsController', ['$scope', '$window', function($scope, $window){
   $scope.projects = angular.fromJson($window.projects);

如果您愿意,可以使用您的init函数方法,重要的部分是使用$ window服务。