使用Angular缓存父页面数据的方法
2019/6/27 21:31:10
本文主要是介绍使用Angular缓存父页面数据的方法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
angular做单页面应用是一个比较好的框架,但是它有一定的入门难度,对于新手来说可能会碰到很多坑,也有许多难题,大部分仔细看文档,找社区是能解决的。
但有些问题也许资料比较少,最近遇到过一个要缓存父页面的问题,就是点击进入子页后,再返回时父页面的数据要缓存下来,包括滚动条的位置。再做的过程当中查过
许多资料,都说的不很详细,今天把方法记录下来,供参考。
要想缓存,要用到嵌套路由(ui-router):
有三个嵌套的方法:
- 使用“点标记法”,例如:.state('contacts.list', {})
- 使用parent属性,指定一个父状态的名称字符串,例如:parent: 'contacts'
- 使用parent属性,指定一个父状态对象,例如:parent: contacts(contacts 是一个状态对象
嵌套路由如有不明白的,大家可以自己去google下。
1.在路由中配置好后,在父页面中设置一个子view.
路由配置:
$stateProvider .state('parent', {}) .state('parent.sub',{ url: '/flightStatus/:time', views:{ 'subView':{ templateUrl: 'sub.html', controller: '' } } } );
2.配置好后,在父页面添加view和名字(如果只有一个ui-view,名字可以不要)
parent.html
<ui-view name="subView"></ui-view> <!--其它html代码--> ……
3.这时由父页面进去后,子页面sub.html会加载到name为subView中
在子页面中返回时,用angular的$window.history.back()
;
注意:这里返回时父页面的controller将不在执行
进行以上配置后就可以缓存到父页面的数据了,返回时不会刷新,在进入子页面时大家最好把父页面隐藏(不隐藏是把内容高度设为100%),返回时再显示,这样避免子父页面都有输入框下,按下tab时会把父页面显示的bug
以上所述是小编给大家介绍的使用Angular缓存父页面数据的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对找一找教程网网站的支持
这篇关于使用Angular缓存父页面数据的方法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-27Ant Design Vue入门指南:轻松搭建美观界面
- 2024-11-27Vue3项目实战:从零开始的完整指南
- 2024-11-27Vue CLI多环境配置资料详解
- 2024-11-27Vue3+Vite资料:新手入门教程
- 2024-11-27Vue3阿里系UI组件资料入门教程
- 2024-11-27如何集成Ant Design Vue的图标资料
- 2024-11-27如何集成Ant Design Vue图标资料
- 2024-11-27Vue CLI多环境配置资料:新手教程
- 2024-11-27Vue3的阿里系UI组件资料入门指南
- 2024-11-27Vue3公共组件资料详解与实战教程