控制器通过异步请求得到的数据怎么在指令中使用?
我在控制器下面通过一个promise得到的数据,赋值给控制器下的一个作用域变量,我在指令上双向绑定了这个变量,打印出来的值是undefined,我在想是不是异步请求还没返回值就已经执行了,有没有其他方法让我能在指令中使用异步请求回来的数据?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
最后放弃了使用指令了,用模板递归
正常来讲这个逻辑应该是正确的,我怀疑你是promise用的不对,贴代码看看吧是不是没有在then方法里写数据?
如果你写的是angular,不建议你在controller里面进行数据请求,而是放在service里面更好。
你在指令上面双向绑定这个变量,这个变量一开始就是undefined,这是没错。因为controller会在link函数之前运行,$watch初始化时,也会运行一次watchFn,这时候拿到的值就是undefined.
使用service
指令watch 如果newVal空则不执行