小程序启动参数相关问题

小程序启动参数相关问题,第1张

相关链接:

每次通过 scheme 调用,前端表现是重新触发 onLaunch 和 onShow,都会传参给appjs 的 onLaunch 和 onShow,基础页面会重新触发 onLoad 和 onShow 方法。

在保活期间(5分钟),比如锁屏之后,会重新触发 onShow 方法,但是却没法获取参数,也就是传参 scheme 只会在调用的时候触发一次,再次启动只是触发 onShow 不会传参。只能前端在 onShow 里做相应的业务逻辑。

当小程序用 scheme 从后台唤起的时候,其实相当于重新被打开了 onLoad,还有 onShow 都会被触发。

在保活期间(5分钟)被重新唤起的时候,就只会触发 onShow 。

在小程序 appjs 的 onLaunch 或 onShow 进行获取启动参数。

如果冷启动,则会在 onLaunch(options) 中获得参数; 如果为热启动,则会在 onShow(options) 中获得参数。建议冷启动中获取不了的时候,再尝试在 onShow 中获取,若还是获取不了,则可判定为没有拿到该参数。

大同小异,后续补上

如图所示是接下来需要完成的效果:

页面结构:2个, index (首页)以及 details (详情页),首页是产品列表,点击产品后进入对应的详情页。

首页的wxml结构:

首页的js数据:

对于详情页请求数据,核心在于点击对应产品然后请求对应的产品数据,因此这里的 navigator 组件跳转的url至关重要,这里的 /pages/details/detailsgoodsId={{index} 是模拟了后台提供的数据接口,后面的 goodsId 作为产品的辨识符,当点击之后可以获取到当前点击的是哪个产品,以供详情页进行请求数据。

详情页wxml结构:

详情页js数据:

详情页请求数据的重点在于生命周期函数, onLoad 函数,它可以在页面加载的时候进行触发,并可以通过参数获取到跳转链接上面的辨识符,也就是通过 onLoad 函数中的 options ,获取到了刚才在 indexwxml 页面url中的辨识符: goodId ;

通过它可以获取到对应的产品数据,再将数据进行修改更新到详情页结构 detailswxml 即可。

本案例中跨页面传递数据主要是利用了URL传值,在另外一个页面中接收,并将数据渲染到页面中,这个过程就需要用到生命周期函数:onLoad函数。

<view class="itemView">用户名:

<input class="input" name="userName" placeholder="请输入用户名"

bindinput ="userNameInput"/>

</view>

<view class="itemView">密 码:

<input class="input" password placeholder="请输入密码"

bindinput="passWdInput" />

</view>

<view class="viewName" style="background-color:#fbf9fe">

<button class="loginBtn" bindtap="loginBtnClick">登录</button>

</view>

Page({

data: {

userName: '',

userPwd:""

}, //获取用户输入的用户名

userNameInput:function(e) {

thissetData({

userName: edetailvalue

})

},

passWdInput:function(e)

输入的密码

loginBtnClick: function (e) {

consolelog("用户名:"+thisdatauserName+" 密码:" +thisdatauserPwd);

}

, // 用户点击右上角分享

onShareAppMessage: function () {

}

})

你可以使用下面的JS代码来实现在控制台打印数字,每行15个数字,共2行:

```

// 定义要打印的数字

var nums = "012345678901234";

// 按照每行15个数字进行分割,并打印出来

consolelog(numsslice(0, 15));

consolelog(numsslice(15, 30));

```

解释一下代码:首先,我们定义了一个变量`nums`存储要打印的数字,这里我定义了一个长度为30的字符串,包含了0-9的数字。然后,我们使用`slice()`方法将这个字符串按照每行15个数字进行分割,并使用`consolelog()`方法在控制台上打印出来,第一行打印前15个数字,第二行打印后15个数字。

如果你想在小程序中打印数字,可以将`consolelog()`方法替换为`wxshowToast()`或者`wxshowModal()`方法,将数字显示在d窗中。

以上就是关于小程序启动参数相关问题全部的内容,包括:小程序启动参数相关问题、微信小程序:详情页请求不同数据的实现原理、微信小程序—如何获取用户输入文本框的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10114721.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存