Dcloud的mui的传参方式和接收

    mui.openWindow({
        id:'cast-detail',
        url:'./cast-detail.html',
        extras:{
            castId:item.id
        }
    });

接收

mui.plusReady(function() {
    var self = plus.webview.currentWebview();
    //添加hide事件
    var id=self.castId;
        mui.getJSON("http://api.xxx.xx/"+id,function(resp){});
});

以事件的方式触发@tap事件触发函数、另一个页面接收

微信小程序

标签绑定触发 bindtap

onProductsItemTap:function(event){
    var id=event.currentTarget.dataset.id;
    wx.navigateTo({
       url:"../product/product?id="+id;
    });
}

接收

Page({
    /**
     * 页面的初始函数
     */
    data:{

    },
    /**
     * 声明周期函数--监听页面加载
     */
    onload:function(options){
        //接收参数
        var id=options.id;
    }
});

普通页面

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<a href="detail.html?id=1&title=启东">跳转链接传参</a>
</body>
</html>
``
 
接收

function getUrlParam(name) {
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
    var r = window.location.search.substr(1).match(reg);  //匹配目标参数
    // if (r != null) return encodeURI(r[2]); return null; //返回参数值
    if (r != null) return r[2]; return null; //浏览器默认在中文上传参给encodeUrl了
}
alert(getUrlParam('id'));
alert(decodeURI(getUrlParam('title')));

![图][1]

Last modification:January 31, 2020
如果觉得我的文章对你有用,请随意赞赏