小程序
小游戏
企业微信
微信支付
扫描小程序码分享
- 当前 Bug 的表现(可附上截图)
当小程序未启动时,通过转发卡片进入小程序,参数带json,这时候json是字符串,但小程序已经启动,点击转发卡片进入小程序,这时候json变成了object
- 预期表现
希望类型一致
1 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
确认下是 iOS / Android 都会出现此问题吗,是否自己的代码有做类似 parse 的处理呢
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
app里面对options.query处理过,这部分逻辑去掉之后,首页拿到的就是字符串了,为什么在app处理options.query会影响到页面的options?
怎么处理的,有代码实现吗
//app.js
App({
onLaunch:
function
(options) {
this
.parse(options);
},
onShow:
console.log(
"onShow:"
, options);
parse:
if
(options.query.share &&
typeof
options.query.share ==
"string"
) {
options.query.share = JSON.parse(options.query.share);
}
})
//index.js
Page({
data: {
onLoad:
"options:"
onShareAppMessage:
() {
let params = {
shareType:
"index"
,
shareLevel: 1,
from: 1
};
let path = `pages/index/index?share=${JSON.stringify(params)}`;
return
{
path: path
建议对生命周期函数传入的 options 进行深拷贝,再进行利用。
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
确认下是 iOS / Android 都会出现此问题吗,是否自己的代码有做类似 parse 的处理呢
app里面对options.query处理过,这部分逻辑去掉之后,首页拿到的就是字符串了,为什么在app处理options.query会影响到页面的options?
怎么处理的,有代码实现吗
//app.js
App({
onLaunch:
function
(options) {
this
.parse(options);
},
onShow:
function
(options) {
console.log(
"onShow:"
, options);
this
.parse(options);
},
parse:
function
(options) {
if
(options.query.share &&
typeof
options.query.share ==
"string"
) {
options.query.share = JSON.parse(options.query.share);
}
}
})
//index.js
Page({
data: {
},
onLoad:
function
(options) {
console.log(
"options:"
, options);
},
onShareAppMessage:
function
() {
let params = {
shareType:
"index"
,
shareLevel: 1,
from: 1
};
let path = `pages/index/index?share=${JSON.stringify(params)}`;
return
{
path: path
};
},
})
建议对生命周期函数传入的 options 进行深拷贝,再进行利用。