0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

小程序开发如何跳转页面和实现参数的传递与视图层显示

Wildesbeast 来源:今日头条 作者:IT小超 2020-02-18 12:15 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

最近在研究小程序开发,看了一些官网文档,我们今天就来学习一下如何跳转,顺便把跳转过程中的参数传递,以及接收赋值到模板中显示学习了。

首先我们创建一个小程序,填写项目名称,以及路径,这里AppID我用的测试账号。

我们进入到开发页面显示的默认代码中Pages目录中只有index和logs,小程序页面一般都包裹.js文件主要是逻辑层的一些内容,.json文件主要作用是页面的独立配置文件,wxml文件主要是我们直观显示的页面相当于html,wxss文件主要是用于页面的样式相当于css,不对赘述详细可以看官方文档,这里主要讲页面跳转以及传参。

我们首先增加一个新的页面test,创建的时候,系统会自动在app.json中创建一条路由,还有更简单的办法,直接在app.json中添加一条路由,系统就会帮你直接创建相对应的内容,这里要注意的是,如果删除页面,路由是不会自动删除的,需要手动删除一下,路由也是一样。

接下来我们改造一下首页的内容,index文件夹中的index.wxml,增加跳转,小程序中是没有a标签的,跳转的标签是,这样就可以正常跳转到设置好的页面了。

除了这种类似于a标签的跳转,小程序还集成api按钮跳转,只需要在button中设置bindtap参数即可,bindtap这个是小程序的事件绑定,写法,同样是在index.wxml中写,这里js中事件没有写报错,和回调等。关于跳转有多种api,根据官方文档,我们文中使用的是navigateTo会保留当前页面,跳转到应用内的某个页面,另外还有redirectTo是会关闭当前页面,跳转到应用内的某个页面,以及navigateBack关闭当前页面,返回上一页面或多级页面等,具体可以查询一下官网文档,或者在文章下方回复。

接下来我们讲怎么传递参数以及接收参数,传递很简单没什么可说的,直接上代码了

接下来我们说一下如何接收传递过来的参数,接收过来的数据是放在options中的,我们直接用console.log打印一下。

我们在onLoad中可以直接打印出来了,onLoad会在创建页面的时候执行,所以跳转之后会直接打印出来。

接下来我们讲怎么把传递过来的数据显示出来,需要对js以及wxml文件进行一定的改造,我先改造一下test.wxml

既然要获取数据就要在js文件中操作,这里要提到setData, 这个函数用于将数据从逻辑层发送到视图层(异步),同时改变对应的 this.data 的值(同步),看到网上有说用this.data的,官网文档特别说明了一下,是不行的,原文在这里:直接修改 this.data 而不调用 this.setData 是无法改变页面的状态的,还会造成数据不一致。

最后上一张效果图:

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • APP
    APP
    +关注

    关注

    33

    文章

    1589

    浏览量

    75644
  • 程序
    +关注

    关注

    117

    文章

    3836

    浏览量

    84766
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    京东:调用用户行为API分析购买路径,优化页面跳转逻辑

    ​  在电商平台的激烈竞争中, 用户购买路径的流畅性 直接影响转化率。京东通过深度整合用户行为API,构建了完整的购买路径分析体系,显著优化了页面跳转逻辑。以下是关键技术实现路径: 一、用户行为
    的头像 发表于 09-18 14:38 419次阅读
    京东:调用用户行为API分析购买路径,优化<b class='flag-5'>页面</b><b class='flag-5'>跳转</b>逻辑

    知乎开源“智能预渲染框架” 几行代码实现鸿蒙应用页面“秒开”

    ,交互延迟等核心痛点,通过智能预测用户浏览目标进行提前渲染,只需几行代码即可显著提升复杂页面的加载性能,实现页面秒开”的高效体验,为鸿蒙开发者带来
    的头像 发表于 08-29 14:32 471次阅读
    知乎开源“智能预渲染框架” 几行代码<b class='flag-5'>实现</b>鸿蒙应用<b class='flag-5'>页面</b>“秒开”

    K230上使用图层layer = Display.LAYER_OSD2显示完图像后,怎么关闭这个图层不再显示

    K230上使用图层layer = Display.LAYER_OSD2显示完图像后,怎么关闭这个图层不再显示,而继续显示
    发表于 08-08 07:53

    【润开鸿HH-SCDAYU800A开发板试用体验】第2個桌面簡單的程序显示为2页面

    | 接上文 【润开鸿HH-SCDAYU800A开发板试用体验】第2個桌面簡單的程序天气及预报 创建跳转后的页面Second.ets 创建第二个页面
    发表于 07-30 10:41

    【汇思博SEEK100开发板试用体验】06 天气app--使用组件导航实现设置页及页面跳转

    ,支持在不同组件间传递跳转参数,提供灵活的跳转栈操作,从而更便捷地实现对不同页面的访问和复用。本
    发表于 07-09 16:57

    利用onPageShow实现返回刷新的操作

    最简单的……还是用onPageShow,因为onPageShow的意思是:当这个页面显示以后执行什么代码。我们以刚刚场景中的第一种为例,假设贴子列表页为A,新增贴子的页面为B,从A跳转
    发表于 06-30 18:12

    bindsheet+键盘在页面跳转时的bug及处理思路

    输入框,图片如下: ​ 当用户输入了金额数字后,点击“去计算”按钮,则通过router跳转到费用计算页面显示计算结果。 我原先的代码顺序是,先跳转到新的
    发表于 06-30 17:36

    关于生命周期中的aboutToAppear和onPageShow的理解和应用

    通过异步去实现耗时的操作,而onPageShow里面的代码要考虑到因为页面跳转返回所导致的反复触发的问题 示例代码: aboutToAppear(): void { // 获取传递
    发表于 06-30 17:32

    英语单词学习页面+单词朗读实现 -- 【1】页面实现 ##HarmonyOS SDK AI##

    ​先看一下页面效果 ​ 整体页面是一个比较简洁的页面,其中有两个特色功能 对于例句中,能够实现将当前的单词从句子中进行识别并突出显示 对于单
    发表于 06-29 23:24

    【HarmonyOS 5】App Linking 应用间跳转详解

    5.项目配置 6.组装聚合链接 7.解析聚合链接中的参数 其他 如何获取应用ID 如何在应用未安装时点击链接跳转至应用市场 什么是 App Linking App Linking 是一款创建跨平台的深度
    发表于 05-16 16:24

    如何在KaihongOS操作系统中写一个动态的页面

    ;#039;)}}实现页面之间的跳转 页面间的导航可以通过页面路由router来实现
    发表于 04-25 06:42

    开发第1个LVGL程序实现按键操作

    开发第1个LVGL程序实现按键操作
    的头像 发表于 01-07 13:49 4418次阅读
    <b class='flag-5'>开发</b>第1个LVGL<b class='flag-5'>程序</b>与<b class='flag-5'>实现</b>按键操作

    鸿蒙原生页面高性能解决方案上线OpenHarmony社区 助力打造高性能原生应用

    Nodepool、HMrouter和DataCache 三大解决方案,并上架OpenHarmony开源社区分,分别针对应用页面滑动、跳转、首页冷启动等关键性能场景提供高效易用的工具,助力伙伴和开发者打造
    发表于 01-02 18:00

    HarmonyOS NEXT 应用开发练习:智能视频推荐

    跳转到视频播放页面)。 本DEMO展示了如何在HarmonyOS NEXT平台上使用ArkTS开发语言构建一个简单的智能视频推荐应用。通过模拟的用户偏好数据,应用能够为用户推荐可能感兴趣的视频。虽然
    发表于 01-02 16:26

    HarmonyOS Next 应用元服务开发-应用接续动态配置迁移按需迁移页面

    迁移后进入的页面参数定义见SUPPORT_CONTINUE_PAGE_STACK_KEY。 说明,当前仅支持router路由的页面栈信息自动恢复,暂不支持navigation路由的页面
    发表于 12-26 15:23