一、頁面重新整理問題
1.父頁面A跳轉到子頁面B,B頁面修改資料後再跳回A頁面,重新整理A頁面資料
(1).父頁面A代碼
window.addEventListener(“pageflowrefresh”, function (e) {
location.reload();
});
(2).子頁面B代碼
var main = plus.webview.currentWebview().opener();//擷取父頁面A對象
var main = plus.webview.getWebviewById(‘A’);//或者通過A頁面id擷取A頁面對象
mui.fire(main, “pageflowrefresh” );//出發A頁面的pageflowrefresh方法
mui.redirect(‘A’,’A.html’);//跳轉到A頁面
二、頁面間傳值問題
1.從A頁面傳值到B頁面(mui.fire()方式)
(1).A頁面代碼
var main = plus.webview.getWebviewById(‘B’);
mui.fire(main, “pageflowrefresh”,{
id:100
})
(2).B頁面代碼
window.addEventListener(“pageflowrefresh”, function (e) {
//獲得事件參數
var id = e.detail.id;
});
2.從A頁面傳值到B頁面(mui.方式)
(1).A頁面代碼
var param = { //這是要傳的資料
userId: ‘userId11111111111’,
toKen: ‘toKen’,
userRole: ‘userRole’
};
mui.openWindow({//目标頁面
url: ‘second.html’,
id: ‘second.html’,
extras: param
});
(2).B頁面代碼( plus必須要放在plusReady裡)
mui.plusReady(function() {
var self = plus.webview.currentWebview(); //擷取目前窗體對象
alert(self.userId); //接收A頁面傳入的id參數值
});
三、送出成功後跳轉頁面,并重新整理
A頁面:
//獲得清單界面的webview
var i = plus.webview.getWebviewById(“ArticleExamine.html”);
//觸發前往頁面的自定義事件(例:AddNew),進而進行資料重新整理
mui.fire(i,’AddNew’);
if(i){
//觸發清單界面的自定義事件(refresh),進而進行資料重新整理
i.evalJS(“ArticleList(1, 10);”);
}
B頁面:
//添加AddNew自定義事件監聽
window.addEventListener(‘AddNew’,function(){
document.getElementById(“news”).innerHTML = “”;
});