mui框架如何实现页面间传值
我的传值
listDetail = '<li class="mui-table-view-cell mui-media>"><a href="aJaxDetail.html?'+arrayobj[i].id+'"><div class="mui-media-body">'+arrayobj[i].digest+'</div></a>></li>';
在cell 的a链接中拼接上需要传送的数据 '+arrayobj[i].id+'
获取数据
<script type="text/javascript" charset="UTF-8">
mui.init();
mui.plusReady(function(){
var url_id = plus.webview.currentWebview().getURL();
var ulr = url_id.split("?");
console.log(ulr);
var url = 'http://c.m.163.com/nc/article/'+ulr[1]+'/full.html';
console.log(url);
mui.ajax(url,{dataType:'json', type:'get', timeout:10000, success:function(data){
getDdetail(data, ulr[1]);
},error:function(error){}
});
});
截取
http://c.m.163.com/nc/article/BK1D04L800014AED/full.html? BK1D04L800014AED
在App开发中,页面间传值是很常见的开发需求,mui框架根据业务场景不同,提供了两种传值模式。
1、页面初始化时,通过扩展参数传值;
mui在初始化页面时,提供了extras配置参数,通过该参数可以设置页面参数,从而实现页面间传值;
mui框架在如下几种场景下,会执行页面初始化操作:
- 通过mui.openWindow()打开新页面(若目标页面为已预加载成功的页面,则在openWindow方法中传递的extras参数无效);
- 通过mui.init()方法创建子页面;
- 通过mui.init()方法预加载页面;
- 通过mui.preload()方法预加载页面
示例,假设我们有如下需求:
在首页中打开关于页面时,传递当前产品名称及版本号,然后在关于页面中读取这两个参数并显示出来;
首页实现代码:
mui.openWindow({
url:'info.html',
id:'info.html',
extras:{
name:'mui',
version:'0.5.8'
}
});
关于页面实现代码:
var self = plus.webview.currentWebview();
var name = self.name;
var version = self.version;