微信小程序开发 | 小程序开发框架
小程序开发框架
- 7.1 小程序模块化开发
- 7.1.1 模块
- 7.1.2 模板
- 7.1.3 自定义组件
- 7.1.4插件
- 7.2 小程序基础样式库—WeUI
- 7.2.1 初识WeUI
- 7.2.2【案例】电影信息展示
- 7.3 使用vue.js开发小程序
- 7.3.1 初识mpvue
- 7.3.2 开发工具
- 7.3.3 项目结构
- 7.3.4【案例】计数器
- 7.4 小程序组件化开发框架
- 7.4.1初识WePY
- 7.4.2 开发工具
- 7.4.3 项目结构
- 7.4.4【案例】商品展示
- 总结
7.1 小程序模块化开发
7.1.1 模块
模块的定义和使用:
注意:
path路径不可以使用绝对路径,否则会报错,应该使用相对路径。
7.1.2 模板
模板的定义和使用:
template组件is属性:
注意:
模板拥有自己的作用域,只能使用data传入的数据以及模版定义文件中定义的 < wxs /> 模块。
7.1.3 自定义组件
自定义组件创建:
自定义组件结构和样式:
自定义组件使用:
自定义组件案例:
效果:
7.1.4插件
打开微信开发者工具,创建一个插件项目:
插件配置文件:
插件使用配置过程:
在页面中使用插件:
7.2 小程序基础样式库—WeUI
7.2.1 初识WeUI
WeUI使用流程:
- 下载WeUI
- 查看样式效果
- 引入样式文件
7.2.2【案例】电影信息展示
WeUI中navbar实现导航栏效果:
正在热映页面效果图展示:
搜索页面效果展示:
搜索页面效果展示:
搜索页面效果展示:
分类页面效果展示:
7.3 使用vue.js开发小程序
7.3.1 初识mpvue
mpvue在技术开发上的一些能力:
- 彻底的组件化开发能力,提高代码复用性。
- 完整的Vue.js开发体验。
- 方便的Vuex数据管理方案,方便构建复杂应用。
- 快捷的webpack构建机制。
- 支持使用npm外部依赖。
- 使用Vue.js命令行工具vue-cli快速初始化项目。
- H5代码转换编译成小程序目标代码的能力。
7.3.2 开发工具
mpvue进行开发前的准备工作:
- 检查开发环境。
- 安装vue-cli脚手架工具。
- 初始化微信小程序项目。
- 安装依赖。
- 启动项目。
- 预览小程序。
7.3.3 项目结构
查看项目目录结构:
- dist:小程序运行代码目录。
- src:源代码目录。
- src/components:组件目录。
- src/pages:页面目录。
- src/App.vue:主组件。
- src/app.json:小程序配置文件。
- src/main.js:入口文件。
- package.json:依赖配置文件。
- config:配置文件。
- project.config.json:项目配置文件。
7.3.4【案例】计数器
计数器效果展示图:
- 启动firstapp小程序
- 单击“去往Vuex示例页面”
- 单击页面“+”和“-”
注意:
需要注意的是,微信开发者工具会提示不支持打开此类文件,此时可以更换其他代码编辑器(如Sublime Text)来打开。
计数器代码实现:
计数器功能实现流程:
- 在vuex中记录state下的count值;
- moutations中注册increment和decrement事件;
- 组件绑定increment和decrement事件处理函数;
- 通过computed属性将最终值展示到页面;
7.4 小程序组件化开发框架
7.4.1初识WePY
WePY框架特征:
- 类Vue开发风格;
- 支持自定义组件开发;
- 支持引入npm包;
- 支持Promise;
- 支持ES2015+特性;
- 支持多种编译器;
- 支持多种插件处理;
- 支持 Sourcemap,ESLint等;
- 小程序细节优化;
7.4.2 开发工具
WePY框架开发微信小程序前的准备工作:
- 检查开发环境。
- 安装wepy-cli。
- 生成Demo项目。
- 安装依赖。
- 开启实时编译
- 创建wepy小程序
预览WePY小程序Demo案例项目:
7.4.3 项目结构
WePY项目目录介绍:
- dist:小程序运行代码目录。
- src:源代码目录。
- package.json:依赖配置文件。
- wepy.config.js:WePY配置文件。
- project.config.json:项目配置文件。
- components:WePY组件目录。
- pages:WePY页面目录。
- index.wpy: index页面。
- app.wpy:入口文件。
WePY项目结构图:
WePY项目目录app.wpy入口文件:
WePY项目目录首页index.wpy页面:
页面继承了wepy.page类,其中Page实例的属性:
7.4.4【案例】商品展示
WePY框架搭建小程序效果展示图:
注意:
需要在配置完成的框架进行代码编写和编译。
创建index.wpy文件,template组件使用:
创建index.wpy文件,style标签区域编写样式代码:
创建index.wpy文件,script区域编写js代码:
总结
本章主要讲解了小程序的模块化开发和各种框架的使用。通过本章的学习,读者应掌握如何在小程序中进行模块化开发,提高代码的可复用性;了解小程序开发中常用的一些框架和库的特点,熟悉WeUI库、mpvue框架、WePY框架的基本使用。
相关文章:

微信小程序开发 | 小程序开发框架
小程序开发框架7.1 小程序模块化开发7.1.1 模块7.1.2 模板7.1.3 自定义组件7.1.4插件7.2 小程序基础样式库—WeUI7.2.1 初识WeUI7.2.2【案例】电影信息展示7.3 使用vue.js开发小程序7.3.1 初识mpvue7.3.2 开发工具7.3.3 项目结构7.3.4【案例】计数器7.4 小程序组件化开发框架7.…...
气候系统设计
基础概念 一个星球(例如地球)的气候系统主要是一些基本参数基于公转周期(年)和自转周期(日)的变化,这其中会有两个变化因素:地理位置(经纬度)和天气变化&…...

如何使用Thymeleaf给web项目中的网页渲染显示动态数据?
编译软件:IntelliJ IDEA 2019.2.4 x64 操作系统:win10 x64 位 家庭版 服务器软件:apache-tomcat-8.5.27 目录一. 什么是Thymeleaf?二. MVC2.1 为什么需要MVC?2.2 MVC是什么?2.3 MVC和三层架构之间的关系及工…...
01 | 电机常用语
1 电机常用术语 1.1 原点 原点是指步进电机在驱动直线运动机构时的起始点。 1.2 点动 点动是电动机控制方式中的一种。 点动由于在这一控制回路中没有自保,也没有并接其它的自动装置,只是按下控制回路的启动按钮,主回路才通电,松开启动按钮,主回路就没电了。最典型的是…...
Leetcode.2601 质数减法运算
题目链接 Leetcode.2601 质数减法运算 Rating : 1779 题目描述 给你一个下标从 0 开始的整数数组 nums,数组长度为 n 。 你可以执行无限次下述运算: 选择一个之前未选过的下标 i ,并选择一个 严格小于 nums[i]的质数 ppp &…...

DP7416国产192K数字音频接收芯片兼容替代CS8416
目录192K 数字音频应用DP7416简介芯片特性192K 数字音频应用 采样率192khz,能将192,000hz以下的频率都录下来,而且对声波每秒连续采样192,000次。在回放的时候,这192,000个采样点按顺序播放,从而还原原来的声音。 过采样技术除…...

全球土壤湿度数据获取方法
土壤湿度亦称土壤含水率,表示土壤干湿程度的物理量。是土壤含水量的一种相对变量。通常用土壤含水量占干土重的百分数是示,亦称土壤质量湿度,如用土壤水分容积占土壤总容积的百分数表示,则称土壤容积湿度。通常说的土壤湿度&#…...

在proteus中仿真arduino实现矩阵键盘程序
矩阵键盘是可以解决我们端口缺乏的问题,当然,如果我们使用芯片来实现矩阵键盘的输入端口缺乏的问题将更加划算了,本文暂时不使用芯片来解决问题,而使用纯朴的8根线来实现矩阵键盘,目的是使初学者掌握原理。想了解使用芯…...

【ROS2指南-5】理解ROS2服务
目标:使用命令行工具了解 ROS 2 中的服务。 教程级别:初学者 时间: 10分钟 内容 背景 先决条件 任务 1 设置 2 ros2服务列表 3 ros2服务类型 4 ros2 服务查找 5 ros2界面展示 6 ros2 服务调用 概括 下一步 相关内容 背景 服务是 …...

探索Apache Hudi核心概念 (3) - Compaction
Compaction是MOR表的一项核心机制,Hudi利用Compaction将MOR表产生的Log File合并到新的Base File中。本文我们会通过Notebook介绍并演示Compaction的运行机制,帮助您理解其工作原理和相关配置。 1. 运行 Notebook 本文使用的Notebook是:《A…...

100Wqps异地多活,得物是怎么架构的?
说在前面 在40岁老架构师尼恩的数千读者群中,一直在指导大家简历和职业升级,前几天,指导了一个华为老伙伴的简历,小伙伴的优势在异地多活,但是在简历指导的过程中,尼恩发现: 异地多活的概念、异…...

35岁的测试工程师被公司强行辞退,感叹道:我以前就该好好努力了
曾经的高薪软件测试工程师,今年35岁了,被公司劝退了,外卖跑到凌晨,很累,但还是有一种想诉说的冲动。哪怕让大家觉得已经说得太多了,烦了,都成祥林嫂了,但是,我是真的想说…...

ASP.NET动态Web开发技术第5章
第5章数据验证一.预习笔记 1.验证控件概述: 2.RequiredFieldValidator(必填验证) 常用属性1:ControlToValidator:被验证的输入控件的ID 常用属性2:Text:验证失败时,验证控件显示的文本 常用…...

【数据结构与算法篇】时间复杂度与空间复杂度
目录 一、数据结构和算法 1.什么是数据结构? 2.什么是算法? 3.数据结构和算法的重要性 二、算法的时间复杂度和空间复杂度 1.算法效率 2.算法的复杂度 3.复杂度在校招中的考察 4.时间复杂度 5.空间复杂度 6.常见复杂度对比 7.复杂度的OJ练…...

HTTP API接口设计规范
1. 所有请求使用POST方法 使用post,相对于get的query string,可以支持复杂类型的请求参数。例如日常项目中碰到get请求参数为数组类型的情况。 便于对请求和响应统一做签名、加密、日志等处理 2. URL规则 URL中只能含有英文,使用英文单词或…...
数据一致性校验(pt-table-checksum)
介绍 pt-table-checksum 和 pt-table-sync 是 percona 公司发布的、检查 MySQL 主从数据库数据一致性校验的工具。pt-table-checksum 利用 MySQL 复制原理,在主库执行校验和计算,并对比主从库校验和,由此判断主从库数据是否一致。如果发现数…...

Talk预告 | 新加坡国立大学郑奘巍 AAAI‘23 杰出论文:大批量学习算法加速推荐系统训练
本期为TechBeat人工智能社区第486期线上Talk! 北京时间3月30日(周四)20:00,新加坡国立大学二年级博士生——郑奘巍的Talk将准时在TechBeat人工智能社区开播! 他与大家分享的主题是: “大批量学习算法加速推荐系统训练”,届时将分…...

肖 sir_就业课__004项目流程(H模型)
项目流程: 一、面试提问(h模型) 1、你说下你们公司测试流程? 2、给你一个需求你会怎么做? 3、你讲下你的工作? 4、谈谈你是如何去测试? 答案:h模型 要求第一人称来写 讲解简化文字流程&#x…...

snipaste 截图工具——可以使图片悬浮在任何软件上,方便对比
一、下载 官网下载地址:Snipaste Downloads (需要梯子) CSDN下载地址:https://download.csdn.net/download/weixin_43042683/87671809 1. 下载 压缩包后,免安装,直接解压后既可以使用。 2. 点击Snipaste.…...
Docker 快速部署Springboot项目
编写Dockerfile文件 # Docker image for springboot file run # VERSION 0.0.1 # Author: # 基础镜像使用java FROM openjdk:8 # 作者 MAINTAINER laihx # VOLUME 指定了临时文件目录为/tmp。 # 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...

通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...

srs linux
下载编译运行 git clone https:///ossrs/srs.git ./configure --h265on make 编译完成后即可启动SRS # 启动 ./objs/srs -c conf/srs.conf # 查看日志 tail -n 30 -f ./objs/srs.log 开放端口 默认RTMP接收推流端口是1935,SRS管理页面端口是8080,可…...

2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...
第25节 Node.js 断言测试
Node.js的assert模块主要用于编写程序的单元测试时使用,通过断言可以提早发现和排查出错误。 稳定性: 5 - 锁定 这个模块可用于应用的单元测试,通过 require(assert) 可以使用这个模块。 assert.fail(actual, expected, message, operator) 使用参数…...

微信小程序云开发平台MySQL的连接方式
注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...

学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”
2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...

逻辑回归暴力训练预测金融欺诈
简述 「使用逻辑回归暴力预测金融欺诈,并不断增加特征维度持续测试」的做法,体现了一种逐步建模与迭代验证的实验思路,在金融欺诈检测中非常有价值,本文作为一篇回顾性记录了早年间公司给某行做反欺诈预测用到的技术和思路。百度…...
NPOI操作EXCEL文件 ——CAD C# 二次开发
缺点:dll.版本容易加载错误。CAD加载插件时,没有加载所有类库。插件运行过程中用到某个类库,会从CAD的安装目录找,找不到就报错了。 【方案2】让CAD在加载过程中把类库加载到内存 【方案3】是发现缺少了哪个库,就用插件程序加载进…...

【 java 虚拟机知识 第一篇 】
目录 1.内存模型 1.1.JVM内存模型的介绍 1.2.堆和栈的区别 1.3.栈的存储细节 1.4.堆的部分 1.5.程序计数器的作用 1.6.方法区的内容 1.7.字符串池 1.8.引用类型 1.9.内存泄漏与内存溢出 1.10.会出现内存溢出的结构 1.内存模型 1.1.JVM内存模型的介绍 内存模型主要分…...