目前就是刷新局部視圖,jquery-mobile的某些樣式會失效,需要強(qiáng)制刷新整個頁面。
如何刷新整個頁面?
補(bǔ)充:如果使用location.replace()
,先是location.replace('page/page1.html)
這樣直接定位到具體位置,這樣的話只會那個頁面的代碼,實(shí)際上那個頁面是一個模板頁面,那么那個模板頁面就是純HTML,無CSS部分。
然后用location.replace(#page1)
這樣只是切換了局部視圖,并沒有什么效果。
如果是$location.reload()
那么會跳轉(zhuǎn)到路由里/
定義的位置,不是刷新當(dāng)前頁面………………
如何刷新當(dāng)前整個頁面?或者
如果當(dāng)前頁面是http://localhost:8080/#/setting
F5后是http://localhost:8080/setting#/
那么路由到otherwise,也就是/
光陰似箭催人老,日月如移越少年。
需要強(qiáng)制刷新整個頁面 部分刷新是不行的
就是F5的效果
=====================>
發(fā)現(xiàn)刷新后url會變化
如果url不變化,那么我們使用window.reload就可以了
所以要解決URL變化的問題
=====================>
因?yàn)轫撁嬉恢眻骵rror loading page錯誤
查了一下這個是jquery-mobile的
然后屏蔽了JQM的JS和CSS文件,發(fā)現(xiàn)URL變化是JQM引起的
查找相關(guān)的解決方案
=====================>
哦,如果要堅持jquery-mobile+angular
就要用jqm的頁面跳轉(zhuǎn)。
=====================>
前端UI框架由jquery-mobile
替換為bootstrap
jqm和angular關(guān)于前端路由方面有沖突
,
如果堅持用jqm,那么就不能使用angular的前端路由,必須用jqm的jq寫頁面跳轉(zhuǎn),那樣頁面可能會比較雜亂。
所以花了半天時間替換成了bootstrap。
不知道為什么,看到你的這個情況我非常想幫助你。目前我也在整合JQM與Angularjs并且有點(diǎn)眉目!
具體就是在初始化jqm的時候配置一些參數(shù):
$( document ).on( "mobileinit", function() {
$.mobile.page.prototype.options.domCache = false;// 關(guān)閉緩存
$.mobile.initializePage = false;
$.mobile.defaultPageTransition = "fade";
$.mobile.autoInitializePage = true;
$.mobile.hideUrlBar = false;
$.mobile.linkBindingEnabled = false;
$.mobile.hashListeningEnabled = false;
$.mobile.ajaxEnabled = false;
});
每個配置具體參考官方的API文檔。
這些配置的某個是解決URL的沖突問題,就是關(guān)閉JQM的路由。