我是Node / Angular的新手并尝试将变量变为angular $scope
。
这是我正在做的事情。
我在app.js(节点服务器端scr)中有这一行:
app.get('/homepage', login.redirectToHomepage);
redirectToHomepage在我的一个节点模块中定义如下:
function redirectToHomePage (req, res) {
...
res.render("homepage",{data: results[0]});
...
}
homepage.html (这可以按预期工作,我看到值被替换了)
<li><a href="/about" style="color:#FFFFFF"> <%=data.email%> </a></li>
homepage.html的控制器是:mainCtrl
我希望能够访问mainCtrl中的变量“data”,以便我可以执行以下操作:
<li><a href="/about" style="color:#FFFFFF"> {{data.email}} </a></li>
我试过了:
<div> ng-controller=“mainCtrl” ng-init="data= #{JSON.stringify(data)}”>
如果我使用JSON.stringify,我会在浏览器控制台中收到解析错误。 参考:Pass Variables to Angular from Server
我应该在mainCtrl中写什么才能使上面的代码行?有什么建议?
答案 0 :(得分:0)
这是任何视图渲染器的限制,如ejs,jade,JSP(对于java而言)。 从服务器到前端获取数据的两种方法:
<script>var data = <%=data.email%>;</script>
,而在另一个js文件中(应该在规定的剪切后的任何地方加载),您可以轻松地将此全局数据分配给任何可验证的范围:$scope.dataFromServer = data;