提问人:Jakub 提问时间:6/29/2014 更新时间:6/30/2014 访问量:90
当数据不可用时,在 angular 模块中设置值时出错
Error when setting value in angular module when data is not available
问:
我尝试将用户的值传递给 angular 代码。为了做到这一点,在服务器端,我用res.render传递用户的数据,在客户端,我设置了值:
<script>
angular.module('UserModule', []).value('user', {req.user|js|s});
</script>
不幸的是,当用户不存在时,它将呈现为:
angular.module('UserModule', []).value('user', );
并导致错误:
Uncaught SyntaxError: Unexpected token )
知道当用户数据不存在时如何避免此错误吗?
答:
1赞
Reto Aebersold
6/30/2014
#1
如第一条注释中所写,如果没有可用的数据,请确保它是一个空对象 ()。顺便说一句,我在 Google 演讲中看到了以下将数据注入 angular 应用程序的模式,我发现它非常有用:req.user
{}
在 HTML 中分配数据:
<script> window.user = {req.user|js|s}; </script>
在配置阶段提供数据作为常量:
angular.module('UserModule', []). config(function(){ $provide.constant('user', angular.copy(window.user)); })
评论
req.user = {}