小程序开发

news2025/2/26 9:39:04

1.准备工作

  • 1.注册公众平台账号(免费)
  • 2.下载小程序开发工具(免费)

2.开发步骤

1.第一个小程序

在这里插入图片描述

  • 1.小程序的AppID相当于小程序平台的一个身份证,这里使用的是测试号(注意区别于服务号或订阅号的AppID
  • 2.测试号默认不使用云服务,根据需求选择模板,这里选择JS-基础模板

2.小程序代码构成

1.JSON配置

在这里插入图片描述

  • 1.JSON是一种数据格式,小程序中的JSON用于静态配置
  • 2.配置文件说明(根目录)
    • 1.app.json:当前小程序的全局配置,具体可参考小程序全局配置说明
      • 1.页面路径
        • 1.pages:用于描述当前小程序所有页面路径,用于让微信客户端清楚当前小程序页面定义的目录
      • 2.界面表现
        • 2.window:用于定义小程序所有页面的顶部背景颜色,文字颜色定义等
      • 3.网络超时时间
      • 4.底部 tab
    • 2.project.config.json:当前小程序开发工具的个性化配置,具体可参考小程序个性化配置说明
    • 3.page.json:当前小程序独立页面的属性配置,具体可参考小程序独立页面配置说明
2.WXML + WXSS + JS
  • 1.网页编程采用的是HTML + CSS + JS组合
  • 2.小程序开发采用WXML + WXSS + JS组合
  • 3.WXML类似于HTML,具体可参考WXML语法参考;WXSS类似于CSS
  • 4.MVVM开发模式(React,Vue):把渲染和逻辑分离
    • 1.网页开发流程中,通过JS操作DOM(对应 HTML的描述产生的树),以引起界面的一些变化响应用户的行为
    • 2.用户点击某个按钮的时候,JS会记录一些状态到JS变量里,同时通过DOM APIDOM的属性或者行为,进而引起界面一些变化
    • 3.当项目越来越大,代码会充斥着非常多的界面交互逻辑和程序的各种状态变量,显然这不是一个很好的开发模式
    • 4.不要让JS直接操控DOMJS只需要管理状态即可,然后再通过一种模板语法来描述状态和界面结构的关系即可,小程序的框架也是用到了这个思路
  • 5.数据绑定
    • 1.通过{{ }}的语法把一个变量绑定到界面上,称为数据绑定
    • 2.仅仅通过数据绑定还不够完整的描述状态和界面的关系,还需要if/else, for等控制能力,小程序中这些控制能力都用wx:开头的属性来表达
    <text>{{msg}}</text>
    
    this.setData({ msg: "Hello World" })
    
3.小程序运行环境

在这里插入图片描述

  • 1.小程序的运行环境分为
    • 1.渲染层
      • 1.WXML模板和WXSS样式
    • 2.逻辑层
      • 1.JS脚本
  • 2.小程序的渲染层和逻辑层分别由2个线程管理
    • 1.渲染层的界面使用WebView进行渲染
    • 2.逻辑层采用JsCore线程运行JS脚本
    • 3.一个小程序存在多个界面,所以渲染层存在多个WebView线程,这两个线程的通信会经由微信客户端Native做中转,逻辑层发送网络请求也经由微信客户端转发
4.框架
  • 1.小程序框架系统分为两部分
    • 1.逻辑层(App Service
    • 2.视图层(View
  • 2.小程序提供了自己的视图层描述语言WXMLWXSS,以及基于JavaScript的逻辑层框架,并在视图层与逻辑层间提供了数据传输和事件系统,让开发者能够专注于数据与逻辑
  • 3.响应的数据绑定
    • 1.框架核心:响应的数据绑定系统,可以让数据与视图非常简单地保持同步
    • 2.当做数据修改的时候,只需要在逻辑层修改数据,视图层就会做相应的更新

渲染

1.数据绑定

1.列表渲染

2.条件渲染

3.模板

4.引用

  • 网页开发渲染线程和脚本线程是互斥的,这也是为什么长时间的脚本运行可能会导致页面失去响应
  • 小程序中,二者是分开的,分别运行在不同的线程中。网页开发者可以使用到各种浏览器暴露出来的 DOM API,进行 DOM 选中和操作
  • 程序的逻辑层和渲染层是分开的,逻辑层运行在 JSCore 中,并没有一个完整浏览器对象,因而缺少相关的DOM API和BOM API。这一区别导致了前端开发非常熟悉的一些库,例如 jQuery、 Zepto 等,在小程序中是无法运行的。同时 JSCore 的环境同 NodeJS 环境也是不尽相同,所以一些 NPM 的包在小程序中也是无法运行的
  • 网页开发者需要面对的环境是各式各样的浏览器,PC 端需要面对 IE、Chrome、QQ浏览器等,在移动端需要面对Safari、Chrome以及 iOS、Android 系统中的各式 WebView 。而小程序开发过程中需要面对的是两大操作系统 iOS 和 Android 的微信客户端,以及用于辅助开发的小程序开发者工具,小程序中三大运行环境也是有所区别的
  • 在这里插入图片描述
  • ​网页开发者在开发网页的时候,只需要使用到浏览器,并且搭配上一些辅助工具或者编辑器即可。小程序的开发则有所不同,需要经过申请小程序账号、安装小程序开发者工具、配置项目等等过程方可完成

开始

  • 1.开发小程序的第一步,你需要拥有一个小程序账号,通过这个账号你就可以管理你的小程序
  • 2.申请账号
  • 3.进入小程序注册页 根据指引填写信息和提交相应的资料,就可以拥有自己的小程序账号。
    小程序注册
  • 4.登录 小程序后台 ,我们可以在菜单 “开发”-“开发设置” 看到小程序的 AppID 了

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

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

相关文章

浪潮信息KeyarchOS——保卫数字未来的安全防御利器

浪潮信息KeyarchOS——保卫数字未来的安全防御利器 前言 众所周知&#xff0c;目前流行的操作系统有10余种&#xff0c;每一款操作系统都有自己的特点。作为使用者&#xff0c;我们该如何选择操作系统。如果你偏重操作系统的安全可信和稳定高效&#xff0c;我推荐你使用浪潮信…

服务器巡检表

《服务器巡检表》检查项&#xff1a; 1、系统资源 2、K8S集群 3、Nginx 4、JAVA应用 5、RabbitMQ 6、Redis 7、PostgreSQL 8、Elasticsearch 9、ELK日志系统 获取软件开发全套资料进主页。

连夜整理的6个开源项目,都很实用

偶然找到的这个宝藏网站&#xff0c;站内集齐了大量的开源项目。 推荐实用的项目 1、vueNextAdmin 基于 vue3.x CompositionAPI setup 语法糖 typescript vite element plus vue-router-next pinia 技术&#xff0c;适配手机、平板、pc 的后台开源免费模板&#xff0c;…

分享67个节日PPT,总有一款适合您

分享67个节日PPT&#xff0c;总有一款适合您 67个节日PPT下载链接&#xff1a;https://pan.baidu.com/s/1oU-UUCV_69e8Gp5Y6zrzVA?pwd6666 提取码&#xff1a;6666 Python采集代码下载链接&#xff1a;采集代码.zip - 蓝奏云 学习知识费力气&#xff0c;收集整理更不易…

k8s部署单机模式的minio

k8s部署单机模式的minio 一、说明二、yaml内容三、步骤3.1 创建资源3.2 查看启动日志3.2 查看svc并访问控制台 一、说明 项目使用minio&#xff0c;准备在k8s环境部署一套minio试用。 1.关于minio的原理和概念参考: https://mp.weixin.qq.com/s?__bizMzI3MDM5NjgwNg&mid…

vagrant up卡死问题

环境 OS&#xff1a;Windows 10Vagrant&#xff1a;Vagrant 2.2.14VirtualBox&#xff1a;6.1.18 r142142box&#xff1a;CentOS-7-x86_64-Vagrant-2004_01.VirtualBox.box 详细信息 解决办法 修改文件Vagrantfile&#xff0c;增加如下配置&#xff0c;测试可以正常启动 conf…

为什么 PostgreSQL 能代替 MongoDB?

在进行技术选型时&#xff0c;需要考虑众多因素&#xff0c;如功能、性能、可靠性、成本效益、社区支持和团队技术能力等&#xff0c;然而&#xff0c;影响最终决定的关键因素的往往是团队 Leader 的技术品味&#xff0c;这也能解释为什么阿里偏爱 Java&#xff0c;而字节跳动更…

判断一个链表是否为回文结构

&#x1f4d1;打牌 &#xff1a; da pai ge的个人主页 &#x1f324;️个人专栏 &#xff1a; da pai ge的博客专栏 ☁️宝剑锋从磨砺出&#xff0c;梅花香自苦寒来 &#x1f324;️题目结构 给定一个…

Vue 理解MVVM设计模式

vue作者在最初设计vue的时候参考了mvvm这个模型。没有完全遵循mvvm&#xff0c;是在一定程度上遵循了这个模型。根据这个模型设计了vue里面的模型。 MVVM模型 1.M&#xff1a;模型(Model)&#xff1a;对应vue代码当中data中的数据&#xff0c;模型就是vue里面的数据 2.V&#x…

AT COMMAND(转载)

AT&#xff08;Attention&#xff09;指令是由 Dennis Hayes 发明的&#xff0c;所以也称为 Hayes command set。AT 指令最初是用来指导 modem 工作的&#xff0c;后面随着技术的发展&#xff0c;低速 modem 已经退出了市场&#xff0c;但 AT 指令却不断发展&#xff0c;并且在…

掌握Python异步IO利器:深入解读Asyncio

更多资料获取 &#x1f4da; 个人网站&#xff1a;ipengtao.com 异步 IO 与 Asyncio 在 Python 中的应用 在当今互联网时代&#xff0c;处理大量并发请求或I/O密集型任务对于软件应用程序至关重要。Python的异步IO框架——Asyncio成为了处理此类问题的有力工具。本文将深入介…

吉客云与金蝶云星辰业财一体化数据集成

吉客云与金蝶云星辰业财一体化数据集成为例&#xff0c;探讨如何利用轻易云数据集成平台高效整合企业系统。金蝶云星辰在供应链和财务管理方面具有显著优势&#xff0c;而吉客云则专注于订单处理和发货。两者的协同运作&#xff0c;是企业数字化转型的典型案例。 二、集成总体蓝…

java:封装统一的响应体code、data、msg、paging

背景 我们在写接口的时候一般不会直接返回给前端数据&#xff0c;而是会有响应体&#xff0c;比如 code、data、msg&#xff0c;这样就有一个统一的结构方便前端处理&#xff0c;那么今天就来封装一个统一的响应体 封装基本响应体 1、在 config 包里新建 ApiResponse.java …

03、pytest初体验

官方实例 # content of test_sample.py def func(x):return x 1def test_ansewer():assert func(3) 5步骤解释 [100%]指的是所有测试用例的总体进度&#xff0c;完成后&#xff0c;pytest显示一个失败报告&#xff0c;因为func(3)没有返回5 注意&#xff1a;你可以使用ass…

smartkit巡检E9000设备

https://support.huawei.com/enterprise/zh/doc/EDOC1100325140/f6eeacd6 打开链接&#xff0c;里面的内容很详细。

2023年【道路运输企业主要负责人】最新解析及道路运输企业主要负责人模拟考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 道路运输企业主要负责人最新解析是安全生产模拟考试一点通总题库中生成的一套道路运输企业主要负责人模拟考试&#xff0c;安全生产模拟考试一点通上道路运输企业主要负责人作业手机同步练习。2023年【道路运输企业主…

继上海车展后,英信翻译再进广州车展大显身手

第二十一届广州车展于2023年11月17日-26日在广州琶洲盛大举行 &#xff0c;历时十天的展会共吸引到场观众84.7万人次&#xff0c;举办了67场新闻发布会&#xff0c;近5000家海内外媒体机构的1.2万名媒体人员参与报道了展会盛况&#xff0c;再创历史新高。本届广州车展在国内外企…

学生信息管理系统

摘 要 学生成绩管理系统是典型的信息管理系统(MIS)&#xff0c;其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。经过分析&#xff0c;我们使用Microsoft公司的C语言开发工具&#xff0c;将与C语言技术与数据库SQL2008相结合进行设计。首先&#xff0c;…

C# WPF上位机开发(图形显示软件)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 在实际应用中&#xff0c;有一种情况就是&#xff0c;我们需要经常对数据进行图形化显示&#xff0c;这样会比较直观一点。比如经济统计里面的同比…

java每日一记 —— BeanFactory 与 ApplicationContext 的区别

BeanFactory 与 ApplicationContext 1.容器与 bean1.BeanFactory 接口2.ApplicationContext 接口 2.测试几个小案例 此篇代码在jdk11上正常运行&#xff0c;springBoot版本为2.7.14 1.容器与 bean 1.BeanFactory 接口 1.先看下源码&#xff1a; 2.从源码中的接口中可以得出…