angular做單頁面應用是乙個比較好的框架,但是它有一定的入門難度,對於新手來說可能會碰到很多坑,也有許多難題,大部分仔細看文件,找社群是能解決的。
但有些問題也許資料比較少,最近遇到過乙個要快取父頁面的問題,就是點選進入子頁後,再返回時父頁面的資料要快取下來,包括滾動條的位置。再做的過程當中查過
許多資料,都說的不很詳細,今天把方法記錄下來,供參考。
要想快取,要用到巢狀路由(ui-router):
有三個巢狀的方法:
使用「點標記法」,例如:.state('contacts.list', {})
使用parent
屬性,指定乙個父狀態的名稱字串,例如:parent: 'contacts'
使用parent
屬性,指定乙個父狀態物件,例如:parent: contacts
(contacts 是乙個狀態物件
巢狀路由如有不明白的,大家可以自己去google下。
1.在路由中配置好後,在父頁面中設定乙個子view.
路由配置:
$stateprovider.state('parent', {})
.state('parent.sub',
}});
2.配置好後,在父頁面新增view和名字(如果只有乙個ui-view,名字可以不要)
parent.html<
ui-view
name
="subview"
>
ui-view
>
……
3.這時由父頁面進去後,子頁面sub.html會載入到name為subview中
在子頁面中返回時,用angular的$window.history.back();
注意:這裡返回時父頁面的controller將不在執行
進行以上配置後就可以快取到父頁面的資料了,返回時不會重新整理,在進入子頁面時大家最好把父頁面隱藏(不隱藏是把內容高度設為100%),返回時再顯示,這樣避免子父頁面都有輸入框下,按下tab時會把父頁面顯示的bug
使用Angular快取父頁面資料的方法
angular做單頁面應用是乙個比較好的框架,但是它有一定的入門難度,對於新手來說可能會碰到很多坑,也有許多難題,大部分仔細看文件,找社群是能解決的。但有些問題也許資料比較少,最近遇到過乙個要快取父頁面的問題,就是點選進入子頁後,再返回時父頁面的資料要快取下來,包括滾動條的位置。再做的過程當中查過 ...
用子頁面(js)重新整理父頁面
今天在做系統的時候,在做新增新聞模組的時候。用到了新增完新聞後要重新整理父頁面來更新資料,所以就在網上找了些資料 解決了問題 非模態重新整理父頁面 window.opener.location.reload 模態重新整理父頁面 window.dialogarguments.location.relo...
mysql 儲存資料 怎麼用mysql儲存資料
seetings中 mysql的基本引數 sql host localhost sql db name spider sql sheetname douban sql user root sql password pipelines中 建構函式用於初始化mysql的各項引數 def init sel...