AngularJS 如何在页面上获取后端传参
后端是spring,返回页面及参数如下:
model.put("userName", userName); return "/cluster";
如果使用$http.post()方法,会在success中拿到这个变量,但如何在页面刚刚加载时显示呢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(8)
@逝水fox 算了,谢谢你,我现在对Angular理解太浅了,有点理解但不完全理解,让我自己想想吧
通过指令指定模版文件并为他初始化scope
使用:
这样的好处是不污染主页面控制器的scope
谢谢,我再研究一下
回复
在页面刚刚加载就显示这个是做不到的除非数据跟着页面一起过来。按照你ajax的处理过程,延迟是肯定有的。所以你只能是给一个初始值(比如空对象,空列表或空串等),在ajax返回回调前先用于初始化页面界面。
回复
@逝水fox : 我觉得userName这个变量一定在request中,但我还不知道怎么get这个变量,原理一定是这样的
回复
@逝水fox : 这个变量是在页面的header中出现的,我把他抽成模板,用ng-include插入到页面中。原来的用法不是模板,直接写在大页面里,用的是EL表达式${userName}可以获得这个变量,但include之后却get不到了,所以我在找解决办法
回复
因为ng-include实际是另外一个请求加载的模版文件(并且前端有缓存),所以你的el写在。这个情况你只能是在主页面的scope里引用userName这个属性,给模版引用或者使用AngularJS的指令。
给定一个初始值。在发起post请求,后更新该值。
必要时使用promise来控制