扫码关注官方订阅号
想实现页面的数据改变了(就是说我提交了数据到后台),想自动刷新一下数据,渲染在页面上了,只是数据刷新,怎么弄??急呀.....
ringa_lee
angularjs的数据应该是双向绑定的,把前端视图对应的model里的数据更新到最新就可以了。
你具体遇到了什么情况
上传图片的情况
$scope.imgUrl = null; someAjaxReturnPromise() .then(resp => { // ... do something $scope.imgUrl = resp.imgUrl; })
<p ng-if="imgUrl"> <img ng-src="{{imgUrl}}"> </p>
要么前端轮询,要么部署个长连接服务器或者推送?
前端ajax提交成功 就重新取数据或者更新数据就好了 angular是双向绑定 页面上的数据也会改变的啊
事件监听:实现从Model到DOM的更新
分两种情况:
前端触发的改变,因为angular是双向绑定的,一般来说$digest循环会自动刷新数据。
angular
$digest
如果是服务器数据改变不是由前端触发的,那么可以通过两种方法来实现前后端数据同步:
轮询,通过$interval注册一个函数,每隔一秒就去服务器拿一次数据,然后刷新前端。
$interval
websocket,使用websocket进行双工通信,比如采用socket.io这个库就可以实现。
websocket
用$watch监测
看了你的几个问题,还是不了解angualr。问题应该是出在你的数据显示上,而不是刷新的问题。从你的tag就看出来了,用angular的话jQuery是不需要的。你的数据显示要使用angular的方式,单一数据如 <span>{{demoText}}</span>,数组如<ul><li ng-repeat="item in yourRows">{{item.name}}</li></ul> 在这个前提下,当$scope.demoText或者$scope.yourRows的值发生变化时,显示的数据自然同步变化,根本不存在你想象的刷新问题。亲,不要拿angualr当作jquery来用哦。
这不就是再调一下获取数据的接口然后赋值给对应的model就行了吗。。。angular会帮你做重新渲染的事情的,不需要自己来做,你要做的事情就是更新模型的值
如果是想在向后台提交请求后实时动态的在页面展示后台返回的数据的话就可以在请求后台成功的函数里请求你想展示的数据,然后绑定对应的modal就可以了.
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
angularjs的数据应该是双向绑定的,把前端视图对应的model里的数据更新到最新就可以了。
你具体遇到了什么情况
上传图片的情况
要么前端轮询,要么部署个长连接服务器或者推送?
前端ajax提交成功 就重新取数据或者更新数据就好了 angular是双向绑定 页面上的数据也会改变的啊
事件监听:实现从Model到DOM的更新
分两种情况:
前端触发的改变,因为
angular是双向绑定的,一般来说$digest循环会自动刷新数据。如果是服务器数据改变不是由前端触发的,那么可以通过两种方法来实现前后端数据同步:
轮询,通过
$interval注册一个函数,每隔一秒就去服务器拿一次数据,然后刷新前端。websocket,使用websocket进行双工通信,比如采用socket.io这个库就可以实现。用$watch监测
看了你的几个问题,还是不了解angualr。问题应该是出在你的数据显示上,而不是刷新的问题。从你的tag就看出来了,用angular的话jQuery是不需要的。
你的数据显示要使用angular的方式,单一数据如 <span>{{demoText}}</span>,数组如<ul><li ng-repeat="item in yourRows">{{item.name}}</li></ul>
在这个前提下,当$scope.demoText或者$scope.yourRows的值发生变化时,显示的数据自然同步变化,根本不存在你想象的刷新问题。
亲,不要拿angualr当作jquery来用哦。
这不就是再调一下获取数据的接口然后赋值给对应的model就行了吗。。。angular会帮你做重新渲染的事情的,不需要自己来做,你要做的事情就是更新模型的值
如果是想在向后台提交请求后实时动态的在页面展示后台返回的数据的话就可以在请求后台成功的函数里请求你想展示的数据,然后绑定对应的modal就可以了.