0
点赞
收藏
分享

微信扫一扫

微信小程序基础概念


 一、概念

(1)小程序是什么?

产品经理视角:用户不需要安装卸载就可以使用的应用,达到了用完即走的目的。

用户视角:微信里的应用

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

1、运行环境不同(宿主环境不同)

网页运行在浏览器环境

小程序运行在微信环境

2.  API不同

小程序是在微信中运行的  所以小程序没有DOM、BOM API,但是小程序可以调用微信环境提供的API:微信支付、微信扫码、地理定位

3.开发模式不同

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

小程序开发有自己的一套标准 :

  • 申请小程序开发账号
  • 安装小程序开发者工具
  • 创建和配置并开发小程序项目
  • 上线到微信提供的环境中

(3)小程序开发流程

参考 : 微信公众平台

1.注册:在微信公众平台注册小程序,完成注册后可以同步进行信息完善和开发   通常由运营、产品经理、项目经理进行注册

2.小程序信息完善:填写小程序基本信息,包括名称、头像、介绍及服务范围等  通常是有运营、项目经理、产品经理进行完善

3.开发小程序:完成小程序开发者绑定、开发信息配置后,开发者可下载开发者工具,参考文档进行小程序的开发和调试,前端主要工作

4. 提交审核和发布: 完成小程序开发后,提交代码至微信团队审核,审核通过后即可发布(公测期间不能发布) 前端提交审核产品经理提交上下

填写邮箱等信息后 返回小程序AppID, 相当于小程序在微信中的身份证

(4)基本配置

下载最新的稳定版Stable Build 的微信开发者工具 下载地址

(1)设置===》外观设置 可以设置背景颜色和调试工具的颜色

(2)不使用任何代理,部分点可能装了网络加速器或者 翻强 工具,导致网络不稳定,所以新建项目时 选中不是有代理

(5)文件结构

全局

  1. pages 用来存放所有小程序的页面
  2. utils用来存放工具性质的模块(例如:格式化事件的自定义模块)
  3. app.js 小程序项目的入口文件
  4. app.json 小程序项目的全局配置文件
  5. app.wxss 小程序的全局样式文件 相当于css文件
  6. project.config.json 项目的配置文件
  7. sitemap.json 用来配置小程序及页面运行被微信搜索

局部

小程序官方建议把所有的小程序页面,都放在pages目录中,每个页面以单独的文件存在。

其中,每个页面由4个基本文件组成,分别为: 

  1. .js文件--页面的脚本文件,定义页面的数据、事件处理函数、生命周期
  2. .json文件--当页面的配置文件,配置页面的外观、标题等
  3. .wxml文件--页面的模板结构文件 相当于html
  4. .wxss文件--当前页面的样式表文件 局部css文件

注意:当局部权重大于等于全局wxss时   局部wxss大于全局wxss 

微信小程序基础概念_微信

(6)app.json 文件

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

Demo 项目里面的 app.json 配置内容如下:

微信小程序基础概念_开发者_03

简单了解下这 4 个配置项的作用:

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

(6)project.config.json 文件

project.config.json

  1. setting 中保存了编译相关的配置
  2. projectname 中保存的是项目名称
  3. appid 中保存的是小程序的账号 ID

(7)sitemap.json 文件

微信现已开放小程序内搜索,效果类似于 PC 网页的 SEO (搜索引擎优化),sitemap.json 用来配置小程序页面是否允许微信搜索

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

注意: sitemap 的索引提示是默认开启的,如需要关闭 sitemap 的索引提示,可在小程序项目配置文件 project.config.jsonsetting 中配置字段 checkSiteMapfalse

(8)页面的 .json 配置文件

小程序中的每一个页面,可以使用 .json 文件来对本页面的窗口外观进行配置,页面中的配置项会覆盖 app.json 中的 window 中的配置项

(9)新建小程序页面

  1. pages 文件中右键 新建文件夹 -- home,在 home 文件夹右键 新建 Page -- 输入 home
  • 官方推荐文件夹名称和页面的名称一致,方便后期的维护
  • 新建页面组件的时候,不需要输入后缀名
  1. app.json --> pages 中新增页面的存放路径,小程序开发者工具即可帮我们自动创建对应的页面文件
  2. 对 pages 目录下页面的删除或者新增都需要在 app.json 文件的 pages 数组中进行新增或删除

(10)设置首页的两个方式

调整 app.json --> pages 数组中页面路径的前后顺序,即可修改项目的首页,小程序会把排在第一位的页面,当作项目首页进行渲染

app.jsonpages 同级,配置一个新的节点 entryPagePath 节点,传入需要设置为首页的路径即可,最终小程序项目的首页,以 entryPagePath 节点设置的为准

微信小程序基础概念_开发者_05

微信小程序基础概念_开发者_06编辑

(11)WXML 的概念以及和 HTML 之间的区别

  1. 什么是 WXML
    WXMLWeiXin Markup Language)是框架设计的一套标签语言(组件),用来构建小程序页面的结构,其作用类似于网页开发中的 HTML
  2. WXMLHTML 的区别
  • 标签名称不同
  • HTML --- div、span、img、a
  • WXML --- view、text、image、navigator
  • 标签属性不同
  • <a href="#">超链接</a>
  • <navigator url="/pages/home/home"></navigator>
  • 提供了类似于 Vue 中的模板语法
  • 数据绑定 -- 插值表达式
  • 列表渲染 -- wx:for -- v-for
  • 条件渲染 -- wx:if -- v-if

 (12)WXSS 的概念以及和 CSS 之间的区别

  1. 什么是 WXSS
  • WXSS (WeiXin Style Sheets)是一套样式语言,用于描述 WXML 的组件样式
  • 类似于网页开发中的 CSS
  1. WXSSCSS 之间的区别
  • 新增了 rpx 自适应尺寸单位
  • CSS 中需要手动进行像素单位换算,例如 rem
  • WXSS 在底层支持新的尺寸单位 rpx,在不同大小的屏幕上小程序会自动进行换算
  • 提供了全局的样式和局部样式
  • 项目根目录中的 app.wxss 会作用于所有小程序页面
  • 局部页面的 .wxss 样式仅对当前页面生效
  • WXSS 仅支持部分 CSS 选择器
  • .class 和 #id
  • element(标签选择器)
  • 并集选择器和后代选择器
  • ::after 和 ::before 等伪类选择器

 (13)小程序中 JS 文件的三大分类

一个项目仅仅提供页面的展示是不够的,在小程序中,我们通过 .js 文件来处理用户的操作,例如:响应用户的点击、获取用户的位置等等

小程序中的 JS 文件分类三大类,分别是:

  1. app.js
  • 整个小程序项目的入口文件,通过调用 App() 函数 来启动整个小程序
  1. 页面的 .js 文件
  • 页面的入口文件,通过调用 Page() 函数来创建小程序页面,并运行小程序页面
  1. 普通的 .js 文件
  • 普通的功能模块文件,用来封装公共的函数或属性供页面使用

(14)小程序的宿主环境

微信小程序基础概念_微信_07

微信小程序基础概念_json_08编辑

小程序借助宿主环境提供的能力,可以完成许多普通网页无法完成的功能,例如:微信扫码、微信支付、微信登录、地理定位 等等   

  1. 小程序宿主环境包含的内容
  • 通信模型
  • 运行机制
  • 组件
  • API

(15)小程序的通信主体

小程序中通信的主体是 渲染层逻辑层,其中:

  1. WXML 模板和 WXSS 样式工作在渲染层
  2. JS 脚本工作在逻辑层

微信小程序基础概念_开发者_09

微信小程序基础概念_微信_10编辑

小程序的通信模型

小程序中的通信模型分为两个部分

  1. 渲染层逻辑层 之间的通信
  • 由微信客户端进行转发
  1. 逻辑层第三方服务器 之间的通信
  • 由微信客户端进行转发

微信小程序基础概念_json_11

微信小程序基础概念_微信_12编辑

渲染层和逻辑层运行在不同的线程中

 (16)运行机制

  1. 小程序启动的过程
  • 把小程序的代码包下载到本地
  • 加载 app.json 全局配置文件
  • 执行 app.js 小程序入口文件,调用 App() 创建小程序实例
  • 渲染小程序首页
  • 小程序启动完成
  1. 页面渲染的过程
  • 加载页面的 .json 配置文件
  • 加载页面的 .wxml 模板和 .wxss 样式
  • 执行页面的 .js 文件,调用 Page() 创建页面实例
  • 页面渲染完成

(17)权限管理需求

  • 在中大型的公司中,人员的分工非常仔细:同一个小程序项目,一般会有不同的岗位、不同角色的员工同时参与设计与开发
  • 此时出于管理需要,我们迫切需要对不同的岗位、不同的角色的员工的权限进行边界的划分,使他们能够高效的进行协同开发

微信小程序基础概念_开发者_13

微信小程序基础概念_json_14编辑

小程序的开发流程

微信小程序基础概念_微信_15

 (18)程序成员管理的两个方面

小程序成员管理体现在 管理员 对小程序 项目成员体验成员 的管理:

  1. 项目成员
  • 表示参与小程序开发、运营的成员
  • 可登陆小程序管理后台(微信公众平台)
  • 管理员可以添加、删除项目成员,并设置项目成员的角色
  1. 体验成员
  • 表示参与小程序内测体验的成员
  • 可使用体验版小程序,但不属于项目成员
  • 管理员及项目成员均可添加、删除体验成员 

(19)开发者的权限说明 

项目成员分为三个角色: 运营成员、开发人员、数据分析者

微信小程序基础概念_json_17

开发者的权限说明

开发者权限:可使用小程序开发者工具及对小程序的功能进行代码管理

体验者权限:可使用体验版小程序

登录权限:可登录小程序的后台管理,无需要管理员确认

开发设置:设置小程序服务器域名、消息推送及扫描普通链接二维码打开小程序

腾讯云管理:云开发相关设置

(20)如何添加项目成员和体验成员

小程序管理

微信小程序基础概念_开发者_19

 (21)小程序的发布

软件开发过程中,根据时间节点的不同,会产出不同的软件版本

  • 开发版本:开发者编写代码的同时,对项目代码进行自测
  • 体验版本:直到程序达到一个稳定可靠,可体验的状态时,开发者把体验版本给到产品经理和测试人员进行体验测试
  • 正式版本:最后修复完程序的 bug 后,发布正式版供外部用户使用

微信小程序基础概念_微信_21

微信小程序基础概念_微信_22编辑

在后台查看上传之后的版本

登录小程序管理后台 --> 管理 --> 版本管理 --> 开发版本,即可查看刚才提交上传的版本

微信小程序基础概念_json_23

交审核

  • 为什么需要提交审核
  • 为了保证小程序的质量,以及符合相关的规范,小程序的发布是需要经过腾讯官方审核的
  • 提交审核的方式
  • 在开发版本的列表中,点击 提交审核 按钮之后,按照页面提示填写相关的信息,就能把小程序提交到腾讯官方进行审核
  • 微信小程序基础概念_微信_25编辑

发布

审核通过之后,管理员的微信中会收到小程序通过审核的通知,此时在审核版本的列表中,点击 发布 按钮之后,即可把 审核通过 的版本发布为 线上版本,供所有小程序用户访问和使用

微信小程序基础概念_微信_26



举报

相关推荐

0 条评论