【微信小程序】页面跳转、组件自定义、获取页面参数值

news2024/11/24 1:53:11

在这里插入图片描述

🏆今日学习目标:第十七期——页面跳转、组件自定义、获取页面参数值
😃创作者:颜颜yan_
✨个人主页:颜颜yan_的个人主页
⏰预计时间:25分钟
🎉专栏系列:我的第一个微信小程序


文章目录

  • 前言
  • 跳转到文章详情页面
  • 组件自定义
    • 单篇文章绑定postId
    • 通过dataset获取组件自定义属性
    • 组件自定义属性名的规则
  • 获取页面参数值
  • 读取文章详情数据
    • DBPost.js
    • post-detail.js
  • 总结


前言

哈喽大家好,本期是微信小程序专栏第十七期。本期主要内容是页面跳转、组件自定义、获取页面参数值。
每期内容是连载呢,建议大家可以看看往期内容,更好理解噢~


跳转到文章详情页面

新建文章详情页面。在app.json中新增页面路径,然后保存。

在这里插入图片描述

注册跳转事件。使用一个view组件将template包裹起来,将catchtap事件注册到view组件上。

在这里插入图片描述

在post.js中编写事件的响应函数onTapToDetaill。

在这里插入图片描述

组件自定义

单篇文章绑定postId

要想实现点击文章就跳转到相应的文章详情页面,就需要给每个文章设置一个id,然后绑定这个id,如下,绑定postId:

在这里插入图片描述

我们可以看到,每篇文章的id号都被绑定在该文章的view容器上。

在这里插入图片描述

通过dataset获取组件自定义属性

通过event.currentTarget.dataset.postId获取当前文章的postId。

event事件对象是由MINA框架在调用onTapToDetail函数时传递的参数,其中,currentTarget代表事件绑定的当前组件。
dataset对象包含当前组件中所有属性名以data-开头的自定义属性值。

在这里插入图片描述

组件自定义属性名的规则

  1. 必须以data-开头。
  2. 多个单词由连字符“-”连接。
  3. 单词中最好不要有大写字母,如果有大写字母,除单词第一个字母外,其余大写字母将被转换为小写。
  4. 在js中获取自定义属性值时,多个单词将被转化为驼峰命名。

获取页面参数值

在post-detail.js中获取postId,如下:
在这里插入图片描述

读取文章详情数据

现在,我们已经在文章详情页面中拿到了文章的postId,接下来要根据这个postId去缓存数据库中读取文章详细数据。

DBPost.js

如下,我们在DBPost.js中增加代码。首先修改constructor构造函数,增加一个构造参数postId并将postId保存到this变量中。
然后增加一个方法getPostItemById用于获取指定id号的文章数据。

// ES6语法
class DBPost{
    constructor(postId){
        this.storageKeyName = 'postList';
        this.postId = postId;
    }
    // 获取指定id号的文章数据
    getPostItemById(){
        var postsData = this.getAllPostData();
        var len = postsData.length;
        for(var i=0;i<len;i++){
            if(postsData[i].postId == this.postId){
                return{
                    // 当前文章在缓存数据库数组中的序号
                    index:i,
                    data:postsData[i]
                }
            }
        }
    };

post-detail.js

先获取指定id号的文章数据,然后使用this.setData绑定数据。

   onLoad:function(options) {
        // 获取指定id号的文章数据
        var postId = options.id;
        this.dbPost = new DBPost(postId);
        this.postData = this.dbPost.getPostItemById().data;
        this.setData({
            post:this.postData
        })
    },

总结

以上就是今天的学习内容啦~
如果有兴趣的话可以订阅专栏,持续更新呢~
咱们下期再见~
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/58989.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

推荐系统相关论文阅读整理

文章题目 基于协同过滤的微信点餐推荐系统的设计与实现 作者 张彭飞 吉林大学 期刊论文在线阅读—中国知网 (cnki.net)摘要关键词协同过滤;推荐系统;Docker;PXC;RedisCluster;名词解释文献研究目的推荐系统应用现状 在1990 年代&#xff0c;为了解决邮件过载问题&#xff0c…

如此简单的k8s,快速玩转ingress

如此简单的k8s&#xff0c;快速玩转ingress NodePort 可以实现的功能和缺陷&#xff1a; 功能、在每一个节点上面都会启动一个端口&#xff0c;在访问的时候通过任何的节点&#xff0c;通过节点加ip的形式实现访问 缺点、也就是说每个端口只能使用一次&#xff0c;一个端口对应…

传输层协议 —— TCP(图解1)

目录 一、TCP的基本认识 1. TCP头部格式 2. TCP协议的特点 3. 什么是TCP连接 4. TCP如何封装与分用 二、通过序列号和确认应答号提高可靠性 1. 32位序列号 2. 32位确认应答号 3. 保证可靠性 4. 为什么序列号和确认应答号是单独的字段 三、窗口大小 1. TCP的发送和…

[附源码]JAVA毕业设计敬老院管理系统(系统+LW)

[附源码]JAVA毕业设计敬老院管理系统&#xff08;系统LW&#xff09; 目运行 环境项配置&#xff1a; Jdk1.8 Tomcat8.5 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&a…

ubuntu 实现远程开关机

1. 需求 家里厅里有三台linux主机在跑虚拟机, 一台windows主机在跑wsl2 - ubuntu 20.04 分别是 硬件网络连接方式OSip虚拟机sEUC i5 7250U 16Gwifiwin1010.0.1.223wsl2 - 随机ipMineFine S500 R7 5800H 64G网线Zorin OS 16.2 (Ubuntu 20.04 LTS)10.0.1.198vm1 - 10.0.1.156 …

统计信号处理基础 习题解答6-14

题目&#xff1a; 噪声过程由IID零均值&#xff0c;PDF为 的随机变量组成&#xff0c;其中0<ε<1 。这样的PDF成为高斯混合PDF&#xff0c;它用来模拟 具有方差为 的高斯噪声以及剩余的服从方差 的高斯噪声。一般 &#xff0c;且ε≪1 &#xff0c;所以具有方差为 的背…

[Java安全]—Tomcat反序列化注入回显内存马

前言 在之前学的tomcat filter、listener、servlet等内存马中&#xff0c;其实并不算真正意义上的内存马&#xff0c;因为Web服务器在编译jsp文件时生成了对应的class文件&#xff0c;因此进行了文件落地。 所以本篇主要是针对于反序列化进行内存马注入来达到无文件落地的目的…

[附源码]计算机毕业设计JAVA学生信息管理系统

[附源码]计算机毕业设计JAVA学生信息管理系统 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybati…

交流转直流LED驱动芯片 MT7930 SOP8

隔离LED驱动ic芯片 MT7930 SOP8 交流转直流LED驱动芯片 MT7930的描述&#xff1a; MT7930是一个单级、高功率因数&#xff0c;源边控制交流转直流LED驱动芯片。只需极少的外围器件感应源边的电学信息&#xff0c;就可以精确地调制LED电流&#xff0c;而不需要光耦及副边感应器件…

5.javase_循环语句

一.for循环语句 (1)for循环语句 1.1 for循环语句格式&#xff1a; for(初始化语句a;条件判断语句b;条件控制语句c) { 循环体语句d; } 1.2 for循环语句范例&#xff1a; for (int i 1; i < 5; i 1) { System.out.println(“HelloWorld”); } 1.3 for循环语句执行顺序 (2)…

6.每天进步一点点---Python爬虫urllib库

文章未完成待续 urllib 库是 Python 内置的一个 HTTP 请求库。在 Python 2.x 中&#xff0c;是由 urllib 和 urllib2 两 个库来实现请求发送的&#xff0c;在 Python 3.x 中&#xff0c;这两个库已经合并到一起&#xff0c;统一为 urllib 了。 urllib 库由四个模块组成。 re…

LeetCode 69. x 的平方根

&#x1f308;&#x1f308;&#x1f604;&#x1f604; 欢迎来到茶色岛独家岛屿&#xff0c;本期将为大家揭晓LeetCode 69. x 的平方根 &#xff0c;做好准备了么&#xff0c;那么开始吧。 &#x1f332;&#x1f332;&#x1f434;&#x1f434; 一、题目名称 69. x 的平方根…

Git全套,从简到细

Git DravenGit一、git工具引入二、git本地工具2.1、下载2.2、使用2.3、修改2.4、查看历史版本2.5、回退历史版本2.6、起死回生三、git远程仓库3.1、使用gitee3.2、配置本地仓库参数3.3、查看gitee仓库3.4、修改后推送四、git两人协作-非冲突小智小杨五、git两人协作-冲突六、gi…

搜索与图论-BFS

文章目录一、BFS1. BFS 简介2. BFS 的基本思想3. BFS 的实现步骤4. BFS 的实际演示二、BFS 例题——走迷宫具体实现1. 样例演示2. 实现思路3. 代码注解4. 实现代码三、BFS 例题——八数码具体实现1. 实现思路2. 代码注解3. 实现代码一、BFS BFS 的关键点是状态的选取和标记。 …

iwebsec靶场 SQL注入漏洞通关笔记13-二次注入

系列文章目录 iwebsec靶场 SQL注入漏洞通关笔记1- 数字型注入_mooyuan的博客-CSDN博客 iwebsec靶场 SQL注入漏洞通关笔记2- 字符型注入&#xff08;宽字节注入&#xff09;_mooyuan的博客-CSDN博客 iwebsec靶场 SQL注入漏洞通关笔记3- bool注入&#xff08;布尔型盲注&#…

力扣(LeetCode)133. 克隆图(C++)

dfs哈希表图 先深搜建立所有点&#xff0c;加入哈希表。再遍历哈希表&#xff0c;按照拷贝前后的结点&#xff0c;拷贝边。最后返回某一结点&#xff0c;即为所求。 class Solution { public:unordered_map<Node*,Node*> mp;Node* cloneGraph(Node* node) {if(!node) r…

UNPV2 学习:Pipes and FIFOs 学习记录

命名管道 fifo 的特点 特点描述 打破了匿名管道只能在父子进程间使用的限制&#xff0c;可以在无亲缘关系的进程之间使用同一个 fifo未指定 NONBLOCK 参数 open fifo 时可能会 block&#xff0c;不当的编码可能会导致进程死锁当请求读超过 fifo 中现有数据大小的数据时&#…

基于yolov5轻量级的学生上课姿势检测识别分析系统

在我之前的博文中已经做过关于人体姿势识别人体姿态检测的博文&#xff0c;都是比较早期的技术模型了&#xff0c;随机技术的迭代更新&#xff0c;很多更加出色的模型陆续出现&#xff0c;这里基于一些比较好用的轻量级模型开发的姿态检测模型。 原始博文如下&#xff1a; 《…

HTML+CSS+JS家乡主题网页设计 学生网页设计作品 dreamweaver作业静态HTML网页设计模板 旅游景点网页作业制作

家乡旅游景点网页作业制作 网页代码运用了DIV盒子的使用方法&#xff0c;如盒子的嵌套、浮动、margin、border、background等属性的使用&#xff0c;外部大盒子设定居中&#xff0c;内部左中右布局&#xff0c;下方横向浮动排列&#xff0c;大学学习的前端知识点和布局方式都有…

BERT模型的详细介绍

Bert模型的基本原理是什么? BERT 来自 Google 的论文Pre-training of Deep Bidirectional Transformers for Language Understanding&#xff0c;BERT 是“Bidirectional Encoder Representations from Transformers”的首字母缩写&#xff0c;整体是一个自编码语言模型&…