2024.2.4日总结(小程序开发1)

news2024/11/22 16:36:00

小程序开发和普通网页开发的区别

  • 运行环境不同

网页运行在浏览器环境中,小程序运行在微信环境中

  • API不同

由于运行的环境不同,所以小程序中无法调用DCM和BOM的API,但是可以调用微信环境提供的各种API,如:地理定位,扫码,支付

  • 开发模式不同

网页的开发模式:浏览器+代码编辑器

  1. 申请小程序开发账号
  2. 安装小程序开发者工具
  3. 创建和配置小程序项目

体验微信小程序:

小程序代码构成

项目结构

  • pages用来存放所有小程序的页面
  • utils用来存放工具性质的模块(例如:格式化时间的自定义模块)
  • app.js小程序项目的入口文件
  • app.json小程序项目的全局配置文件
  • app.wxss小程序项目的全局样式文件
  • project.config.json项目的配置文件
  • sitemap.json用来配置小程序及其页面是否允许被微信索引

小程序官方建议把所有小程序的页面,都存放在pages目录中,以单独的文件夹存在,如图所示:

每个页面由四个基本文件组成

  • .js文件(页面的脚本文件,存放页面的数据,事件处理函数等)
  • .json文件(当前页面的配置文件,配置窗口的外观,表现等)
  • .wxml文件(当前页面模板结构文件)
  • .wxss文件(当前也米娜的样式表文件)

JSON配置文件

JSON配置文件的作用

JSON是一种数据格式,在开发中,JSON总是以配置文件的形式出现,小程序项目也不例外:通过不同的.json配置文件,可以对小程序项目进行不同级别的配置:

  • 项目根目录中的app.json配置文件
  • 项目根目录中的project.config.json配置文件
  • 项目根目录中的sitemap.json配置文件
  • 每个页面文件夹中的.json配置文件
app.json文件

app.sjon是当前小程序的全局配置,包括了小程序的所有页面路径,窗口外观,界面表现,底部tab等

有四个配置项:

  • pages:用来记录当前小程序所有页面的路径
  • window:全局定义小程序所有页面的背景色,文字颜色等
  • style:全局定义小程序组件所有使用的样式版本
  • sitemapLocation:用来指明sitemap.json的位置
project.config.json文件

project.config.json是项目配置文件,用来记录对小程序开发工具所做的个性化配置:

  • setting中保存了编译相关的配置
  • projectname中保存的是项目名称
  • appid中保存的是小程序的账号ID
sitemap.json文件

微信现已开放小程序内搜索,效果类似于PC网页的SEO。sitemap.sjon文件用来配置小程序页面是否允许被微信索引。

当开发者允许微信索引时,微信会通过爬虫的形式,为小程序的页面内容建立索引。当用户的关键字和页面的索引匹配成功时,小程序的页面可能展示在搜索结果中。

如果需要关闭sitemap的索引提示,可在小程序项目配置project.config.json的setting中配置字段checkSiteMap为false。

新建小程序页面

只要在app.json->pages中新增页面的存放路径,小程序开发者工具即可帮我们创建对应的页面文件。

修改项目首页

调整app.json->pages数组中页面路径的前后顺序,即可修改项目的首页。

WXML模板

WXML是小程序框架设计的一套标签语言,用来构建小程序的页面结构,类似于网页开发的HTML。

HTML和WXML的区别

标签名称不同

  • HTML(div,span,img,a)
  • WXML(view,text,image,navigator)

属性结点不同

  • <a href="#">超链接</a>
  • <navigator url="/pages/home/home"></navigator>

提供了类似于Vue中的模板语法

  • 数据绑定
  • 列表渲染
  • 条件渲染

WXSS样式

什么是WXSS

WXSS是一套样式语言,用于描述WXML的组件样式,类似于网页开发中的css

WXSS和CSS的区别

新增了rpx尺寸单位

  • CSS需要手动进行像素单位换算,例如rem
  • WXSS在底层支持新的 党委rpx,在不同大小的屏幕上小程序会自动进行换算

提供了全局样式和局部样式 

  • 项目根目录中的app.wxss会作用于所有小程序页面
  • 局部页面的.wxss样式仅对当前页面生效

WXSS仅支持部分CSS选择器

  • .class和#id
  • element
  • 并集选择器,后代选择器
  • ::after和::before等伪类选择器

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

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

相关文章

MySQL学习记录——삼 库的操作

文章目录 1、创建数据库2、字符集和校验集3、基本操作4、备份与恢复5、连接情况 1、创建数据库 开两个窗口&#xff0c;一个用来访问数据目录/var/lib/mysql&#xff0c;一个用来打开mysql&#xff1a;mysql -u root -p。 创建用的命令 create databse d1; d1是名字&#xff…

【Java八股文面试系列】JVM-内存区域

目录 Java内存区域 运行时数据区域 线程独享区域 程序计数器 Java 虚拟机栈 StackFlowError&OOM 本地方法栈 线程共享区域 堆 GCR-分代回收算法 字符串常量池 方法区 运行时常量池 HotSpot 虚拟机对象探秘 对象的创建 对象的内存布局 句柄 Java内存区域 运…

BUG:docker启动之后直接退出问题

示例如下&#xff1a; 问题排查&#xff1a; 启动命令 sudo docker run --privilegedtrue --runtimenvidia --shm-size80g -v /mmm_data_center:/mmm_data_center -v /imagecenter_new/:/imagecenter_new -v /data1:/data1 -v /mnt/offline_data/:/mnt/offline_data/ --neth…

蓝桥杯---生日蜡烛

某君从某年开始每年都举办一次生日party&#xff0c;并且每次都要吹熄与年龄相同根数的蜡烛&#xff0c;现在算起来&#xff0c;他一共吹熄了236根蜡烛。请问,他从多少岁开始过生日party的? 请填写他开始过生日 party的年龄数。 注意:你提交的应该是一个整数&#xff0c;不要…

记elasticsearch CPU负载100%问题

记elasticsearch CPU负载100%问题 环境&#xff1a;问题表现&#xff1a;初步排查&#xff1a;日志查询hot_thread 深入查询当前elasticsearch正在运行的Task查看Task详情解决问题对导致问题的原因的几个猜测问题复现&#xff1a;导致问题的原因。json导入规则问题json导入规则…

ElementUI Form:Form表单

ElementUI安装与使用指南 Form表单 点击下载learnelementuispringboot项目源码 效果图 el-form.vue&#xff08;Form表单&#xff09;页面效果图 项目里 el-form.vue代码 <script> export default {name: el_form,data() {var checkAge (rule, value, callback…

2月4号作业

编写程序实现二叉树的创建&#xff0c;三种遍历自己销毁 #include <myhead.h>#define TRUE 1 #define FALSE 0 #define OVERFLOW -2 #define OK 1 #define ERROR 0#define INIT_SIZE 20 #define INCREMENT_SIZE 5typedef int Status; typedef int TElemType; //存储结构…

Linux权限【超详细】

&#x1f4d9; 作者简介 &#xff1a;RO-BERRY &#x1f4d7; 学习方向&#xff1a;致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 &#x1f4d2; 日后方向 : 偏向于CPP开发以及大数据方向&#xff0c;欢迎各位关注&#xff0c;谢谢各位的支持 目录 扩展知识&#xff1a…

Linux项目自动化构建工具之make/Makefile演示gcc编译

文章目录 一、背景二、如何使用&#xff1f;三、原理四、关于make的问题五、再次理解/编写makefile依赖关系依赖方法 六、原理讲解项目清理makefile是支持变量的取消执行make后显示命令依赖方法可以多行 一、背景 会不会写makefile&#xff0c;从一个侧面说明了一个人是否具备…

C语言进阶之文件操作

一、什么是文件 磁盘上的文件是文件。 但是在程序设计中&#xff0c;我们一般谈的文件有两种&#xff1a;程序文件、数据文件&#xff08;从文件功能的角度来分类的&#xff09;。 1&#xff09;程序文件 包括源程序文件&#xff08;后缀为.c&#xff09;,目标文件&#xff…

VueFire:一个一流的 Vue 和 Firebase 体验,包括对 Nuxt 的支持,现在已经稳定了

VueFire&#xff0c;一个一流的 Vue 和 Firebase 体验 — 包括对 Nuxt 的支持&#xff0c;现在已经稳定了。 Vue 和 Firebase 现在比以往任何时候都更好了。 构建更好的VueFire 去年&#xff0c;我们宣布与 Eduardo San Martin Morote 合作&#xff0c;构建一个成熟的 Vue 和…

《数字乡村标准化白皮书(2024)》正式发布 智汇云舟参编

近日&#xff0c;全国信标委数字乡村标准研究组2023年度全体会议在北京召开。会议期间&#xff0c;智汇云舟参编的《数字乡村标准化白皮书&#xff08;2024&#xff09;》&#xff08;简称《白皮书》&#xff09;正式发布&#xff01; 发布仪式 白皮书研究背景 作为国家基础制…

交换机ARP学习异常,看网工大佬是如何处理的?

晚上好&#xff0c;我的网工朋友。 在复杂多变的网络环境中&#xff0c;网工就没有不遇到问题的&#xff0c;习惯了&#xff0c;兵来将挡水来土掩。 那ARP异常你遇到过吗&#xff1f;ARP作为网络中的基础协议之一&#xff0c;它的稳定性对整个网络的性能和可靠性至关重要。 …

【MongoDB】跨库跨表查询(python版)

MongoDB跨表跨库查询 1.数据准备&#xff1a;2.跨集合查询3.跨库查询应该怎么做&#xff1f; 讲一个简单的例子&#xff0c;python连接mongodb做跨表跨库查询的正确姿势 1.数据准备&#xff1a; use order_db; db.createCollection("orders"); db.orders.insertMan…

电路分析2

7 等效电路的思想&#xff0c;简化不是目的&#xff0c;这个电路说明一切&#xff01;_哔哩哔哩_bilibili 高中知识&#xff0c;翻笔记 8 什么时候用Y型&#xff1f;看到有有相同数字的时候&#xff0c;就可以考虑用 9 10 输入电阻还有没学完的 ok 11

海外多语言盲盒开发:打破语言障碍,连接全球消费者

随着全球化的加速和互联网的普及&#xff0c;语言障碍成为了影响跨国交流和商业活动的重要因素。为了满足跨国市场的需求&#xff0c;海外多语言盲盒开发成为了一个新兴的领域。本文将探讨海外多语言盲盒开发的意义、现状和未来发展。 一、海外多语言盲盒开发的意义 在全球化…

【C++】运算符重载详解

&#x1f497;个人主页&#x1f497; ⭐个人专栏——C学习⭐ &#x1f4ab;点击关注&#x1f929;一起学习C语言&#x1f4af;&#x1f4ab; 目录 导读 1. 为什么需要运算符重载 2. 运算符重载概念 3. 运算符重载示例 3.1 运算符重载 3.2 >或<运算符 4. 运算符重…

提前祝大家新年好!来看看社区 2023 都得了哪些奖吧

大噶好&#xff01;转眼马上就是“龙”历新年啦&#xff0c;不知道大家这周的工作热情怎么样呢&#xff1f;小陈的心已经在殷切期盼回家过年了&#xff5e; RTE 开发者社区预祝诸位&#xff1a; 2024 年 &#x1f432;龙年添财气&#xff0c;万事皆胜意&#xff01; 回顾过去…

c语言封装继承详解

模块化编程结构 函数头文件 c语言头文件代码 #ifndef __Object_H_ #define __Object_H_// 继承 struct person {int id;char name[20];int gender;const char* (*getGender)(struct person* s);void (*setGender)(struct person* s, const char* strGender); }; struct teache…

C语言问题汇总

指针 #include <stdio.h>int main(void){int a[4] {1,2,3,4};int *p &a1;int *p1 a1;printf("%#x,%#x",p[-1],*p1);} 以上代码中存在错误。 int *p &a1; 错误1&#xff1a;取a数组的地址&#xff0c;然后1&#xff0c;即指针跳过int [4]大小的字节…