在Angular函数中访问Get变量

sup*_*her 2 javascript node.js express angularjs

我正在使用node express和angular js构建一个应用程序.我将一个变量传递给我的视图,如下所示......

app.get('/profile', ensureAuthenticated, function(req, res){
  res.render('profile', { user: req.user });
});
Run Code Online (Sandbox Code Playgroud)

我可以在我的视图中访问这个变量(玉)...

h1 #{user}
Run Code Online (Sandbox Code Playgroud)

但是如何从控制器或指令中的角度函数访问此变量?

zem*_*rco 7

我写了一篇关于这个主题的博客文章 - 如何将JavaScript变量从服务器传递给Angular.

总之,您有三种选择:

  1. 使用内联JavaScript标记(不推荐)
  2. 发出HTTTP请求(正如您在自己的解决方案中所示)
  3. 使用ngInit

您可以在我的帖子中阅读有关详细信息的内容,我只会展示最后一个,在我看来最聪明的解决方案.

要将user对象从快速服务器传递到Angular控制器,请使用以下ngInit指令:

div(ng-controller="UserCtrl", ng-init="user= #{JSON.stringify(user)}")
Run Code Online (Sandbox Code Playgroud)

这会将内容加载到Angular范围内,您应该可以通过调用在控制器内访问它$scope.user.

function UserCtrl($scope) {
  console.log($scope.user);
}
Run Code Online (Sandbox Code Playgroud)