【Html5】 Hbuilder工具+MUI框架,开发H5列表页面不过如此!

本文主要是介绍【Html5】 Hbuilder工具+MUI框架,开发H5列表页面不过如此!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

我们公司大佬写得技术文档,以后可能用的到这个技能,先转载过来以后好直接使用。

转载:https://blog.csdn.net/chendaike/article/details/95453068

侵删,谢谢!


需求分析

小编最近在做一个任务:要求实现一个在微信公众号里面的H5列表页面。拿到这个任务我们首先要进行需求分析,由于是在微信公众号也就是手机里面的H5列表,所以就不可能像PC上的列表页面那样进行分页处理,应该按照手机列表常用的上拉刷新,下拉重新加载的方式实现。所以这个任务主要实现以下两点:

1、    列表页面需实现上拉刷新,下拉重新加载;
2、    动态加载列表数据;

框架选择

基本框架

确定后需求后就要选择合适的技术框架和开发工具进行开发,由于小编在做这个任务之前也没有手机H5开发的项目经验,只在平时阅读技术文章时有一些了解,所以当时想出了以下几种选择:

1、    Eclipse工具+Juqery Mobile UI框架;
2、    Eclipse工具+Juqery框架+iScroll框架;
3、    Hbuilder工具+MUI框架;
4、    WeX5工具及其自带的UI框架。

对比选择

通过比较以上四种组合,小编发现Hbuilder工具+MUI框架这个组合有明显的优势,主要表现在以下几个方面:

1、    Hbuilder工具简单、易用,尤其是强大的联想功能可以极大的简化开发;

å¨è¿éæå¥å¾çæè¿°

2、    可以扩展丰富的插件,比如内置浏览器插件,可以实现刷新页面;

å¨è¿éæå¥å¾çæè¿°

3、    MUI框架具备丰富的示例及技术文档,初学者也可以快速上手;

å¨è¿éæå¥å¾çæè¿°

4、    MUI框架项目只需要引入mui.min.js、mui.min.css即可,是一个轻量级的框架

å¨è¿éæå¥å¾çæè¿°

基于以上优势,小编选择Hbuilder工具+MUI框架来完成H5列表页面的开发,下面小编将会为大家介绍如何快速实现这个H5列表页面。

实现上拉刷新/下拉重新加载的页面效果

1、下载开发工具

大家可以首先到官网(www.dcloud.io)下载HBuilder工具,由于HBuilder工具是基于Eclipse扩展而来,所以下载完成后直接解压缩就可以实现,双击解压缩后的执行文件“HbuilderX.exe”即可打开HBuilder工具,如下图所示:

å¨è¿éæå¥å¾çæè¿°

2、创建项目

新建项目,选中“5+App”后在下拉框中选择mui项目,如下图所示:

å¨è¿éæå¥å¾çæè¿°

输入项目名称后点击创建按钮即可创建项目,项目目录结构如下图所示:

å¨è¿éæå¥å¾çæè¿°

初始index.html页面代码如下图所示(右侧浏览器页签是展示效果图):

å¨è¿éæå¥å¾çæè¿°

3、拷贝示例页面的代码

找到上拉刷新,下拉重新加载的示例页面(pullrefresh.html),如下图所示:

å¨è¿éæå¥å¾çæè¿°

拷贝相关的代码(标签中的内容)到我们的项目页面中,拷贝完成后的效果图如下:

å¨è¿éæå¥å¾çæè¿°

动态加载数据

1、后台接口跨域设置

H5列表页面通过Ajax方式请求后台接口获取列表数据来实现动态加载数据,当H5页面和后台接口服务不在一个Web服务器时需要进行跨域访问。如果跨域访问,这里不在赘述了,一个简单的方法是在后台接口响应时设置以下消息头:

response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "POST,GET,OPTIONS");
response.setHeader("Access-Control-Allow-Credentials", "true");
response.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept, t");

2、    加入Ajax请求代码请求后台数据

å¨è¿éæå¥å¾çæè¿°

3、    添加数据处理的函数

å¨è¿éæå¥å¾çæè¿°

4、    改造示例代码中上拉/下拉的动作函数

å¨è¿éæå¥å¾çæè¿°

此步骤完成后的效果图如下:

å¨è¿éæå¥å¾çæè¿°

5、    参考图文列表页面(media-list.html)和右侧带数字角标页面(tableviews-with-badges.html)页面的列表样式改造列表展示样式

右侧带数字角标页面(tableviews-with-badges.html)效果:

å¨è¿éæå¥å¾çæè¿°

图文列表页面(media-list.html)效果:

å¨è¿éæå¥å¾çæè¿°

改造后函数add()里面for循环的代码块如下图所示:

å¨è¿éæå¥å¾çæè¿°

完成后的效果如下:

å¨è¿éæå¥å¾çæè¿°

核心代码如下:

<!--下拉刷新容器--><div id="pullrefresh" class="mui-content mui-scroll-wrapper"><div class="mui-scroll"><!--数据列表--><ul class="mui-table-view mui-table-view-chevron"></ul></div></div><script>mui.init({pullRefresh: {container: '#pullrefresh',down: {style: 'circle',callback: pulldownRefresh},up: {auto: true,contentrefresh: '正在加载...',callback: pullupRefresh}}});var openId = 'o69AI5_BfceXayCj6do_sbERr_ek';var addNum = 0,    pageSize = 10, rowsTotal = 1; function getOrderList() {mui.get('http://localhost:8080/ysp/getOrderList?openId=' + openId + '&offset=' + addNum + '&limit=' + pageSize, {},function(data) {add(data);}, 'json');}function pullupRefresh() {setTimeout(function() {//当所有数据都加载完成时代表没有更多数据了mui('#pullrefresh').pullRefresh().endPullupToRefresh(addNum == rowsTotal); getOrderList();}, 1500);}/*** 下拉刷新具体业务实现*/function pulldownRefresh() {setTimeout(function() {//重新加载页面location.reload();mui('#pullrefresh').pullRefresh().endPulldownToRefresh();}, 1500);}function add(data) {rowsTotal = data.total;if (addNum >= rowsTotal) {addNum = rowsTotal;}addNum += data.orderInfo.length;var table = document.body.querySelector('.mui-table-view');var cells = document.body.querySelectorAll('.mui-table-view-cell');for (i = 0; i < data.orderInfo.length; i++) {var li = document.createElement('li');li.className = 'mui-table-view-cell mui-media';li.innerHTML =data.orderInfo[i].goodsName;table.appendChild(li);}}</script></body>

结束语

以上就是快速实现H5列表页面的过程,相信大家看了之后也能够快速实现一个H5列表页面。另外小编特地整理了下MUI框架的示例代码以及小编完成的H5页面的代码,需要的同学可以关注我们的微信公众号,回复“mui”获取下载地址进行下载.

 欢迎大家关注我们微信公众号,来交流程序员的技术。如果能留言或者点个赞,我也是很开心的,非常感谢!

å¨è¿éæå¥å¾çæè¿°

 

这篇关于【Html5】 Hbuilder工具+MUI框架,开发H5列表页面不过如此!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/944364

相关文章

Vue3 的 shallowRef 和 shallowReactive:优化性能

大家对 Vue3 的 ref 和 reactive 都很熟悉,那么对 shallowRef 和 shallowReactive 是否了解呢? 在编程和数据结构中,“shallow”(浅层)通常指对数据结构的最外层进行操作,而不递归地处理其内部或嵌套的数据。这种处理方式关注的是数据结构的第一层属性或元素,而忽略更深层次的嵌套内容。 1. 浅层与深层的对比 1.1 浅层(Shallow) 定义

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

【 html+css 绚丽Loading 】000046 三才归元阵

前言:哈喽,大家好,今天给大家分享html+css 绚丽Loading!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏+关注哦 💕 目录 📚一、效果📚二、信息💡1.简介:💡2.外观描述:💡3.使用方式:💡4.战斗方式:💡5.提升:💡6.传说: 📚三、源代码,上代码,可以直接复制使用🎥效果🗂️目录✍️

Hadoop企业开发案例调优场景

需求 (1)需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 (2)需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4    3    3) HDFS参数调优 (1)修改:hadoop-env.sh export HDFS_NAMENOD

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

嵌入式QT开发:构建高效智能的嵌入式系统

摘要: 本文深入探讨了嵌入式 QT 相关的各个方面。从 QT 框架的基础架构和核心概念出发,详细阐述了其在嵌入式环境中的优势与特点。文中分析了嵌入式 QT 的开发环境搭建过程,包括交叉编译工具链的配置等关键步骤。进一步探讨了嵌入式 QT 的界面设计与开发,涵盖了从基本控件的使用到复杂界面布局的构建。同时也深入研究了信号与槽机制在嵌入式系统中的应用,以及嵌入式 QT 与硬件设备的交互,包括输入输出设

OpenHarmony鸿蒙开发( Beta5.0)无感配网详解

1、简介 无感配网是指在设备联网过程中无需输入热点相关账号信息,即可快速实现设备配网,是一种兼顾高效性、可靠性和安全性的配网方式。 2、配网原理 2.1 通信原理 手机和智能设备之间的信息传递,利用特有的NAN协议实现。利用手机和智能设备之间的WiFi 感知订阅、发布能力,实现了数字管家应用和设备之间的发现。在完成设备间的认证和响应后,即可发送相关配网数据。同时还支持与常规Sof

如何在页面调用utility bar并传递参数至lwc组件

1.在app的utility item中添加lwc组件: 2.调用utility bar api的方式有两种: 方法一,通过lwc调用: import {LightningElement,api ,wire } from 'lwc';import { publish, MessageContext } from 'lightning/messageService';import Ca

活用c4d官方开发文档查询代码

当你问AI助手比如豆包,如何用python禁止掉xpresso标签时候,它会提示到 这时候要用到两个东西。https://developers.maxon.net/论坛搜索和开发文档 比如这里我就在官方找到正确的id描述 然后我就把参数标签换过来

高效录音转文字:2024年四大工具精选!

在快节奏的工作生活中,能够快速将录音转换成文字是一项非常实用的能力。特别是在需要记录会议纪要、讲座内容或者是采访素材的时候,一款优秀的在线录音转文字工具能派上大用场。以下推荐几个好用的录音转文字工具! 365在线转文字 直达链接:https://www.pdf365.cn/ 365在线转文字是一款提供在线录音转文字服务的工具,它以其高效、便捷的特点受到用户的青睐。用户无需下载安装任何软件,只