0
点赞
收藏
分享

微信扫一扫

小程序开发(一)项目基础知识



文章目录

  • 一、小程序开发(一)项目基础知识
  • 1. 小程序与普通网页开发的区别
  • 2. 小程序开发准备工作
  • 2.1 开发者工具使用技巧
  • 3. 小程序代码的构成 - 项目结构
  • 3.1 了解项目的基本组成结构
  • 3.2 小程序页面的组成部分
  • 3.3 JSON配置文件
  • 3.3.1 app.json文件
  • 3.3.2 project.config.json文件
  • 3.3.3 sitemap.json文件
  • 3.3.4 页面的 .json 配置文件
  • 4. 小程序页面
  • 4.1 新增小程序页面
  • 4.2 修改项目首页
  • 4.3 WXML模版
  • 4.4 WXSS样式
  • 5. 小程序代码构成-JS逻辑交互
  • 6. 小程序的宿主环境
  • 5.1 通信模型
  • 5.2 运行机制
  • 5.3 页面渲染过程
  • 5.2 运行机制
  • 5.3 页面渲染过程


一、小程序开发(一)项目基础知识

1. 小程序与普通网页开发的区别

  1. 运行环境的不同
  1. 网页运行在浏览器环境中
  2. 小程序运行在微信环境中
  1. API不同
  1. 由于运行环境的不同,所以小程序中,无法调用DOM和BOM的API。
  2. 小程序中可以调用微信环境提供的各种API,例如
  • 地理定位
  • 扫码
  • 支付
  1. 开发模式不同
  • 网页的开发模式:浏览器+代码编辑器
  • 小程序有自己的一套标准开发模式:
  • 申请小程序开发账号
  • 安装小程序开发者工具
  • 创建和配置小程序项目

2. 小程序开发准备工作

  1. 注册小程序开发账号
  1. https://mp.weixin.qq.com/ 选择小程序进行注册
  2. 开发管理-开发设置 路径下获取 AppID(小程序ID)
  1. 安装开发者工具
  2. 创建一个简单的小程序
  1. 新建项目中选择不使用云服务
  2. 选择JS模版
  1. 模拟器查看项目效果-点击编译
  2. 在移动端预览项目效果-点击预览

2.1 开发者工具使用技巧

  1. 快速打开开发者文档 左上【帮助】【开发者文档】中直接打开
  2. 左上【工具】常用【构建npm】
  3. 右侧 【详情】查看【基本信息】、【本地设置】和【项目配置】
  4. 模拟器【机型】建议长选iPhone6/7/8,显示比例改为85%
  5. 底部【页面路径】可切换【页面参数】方便快速定位。
  6. 【调试器】中的箭头可以快速定位页面元素

3. 小程序代码的构成 - 项目结构

3.1 了解项目的基本组成结构

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

3.2 小程序页面的组成部分

官方文档提示:小程序的页面,都放在pages目录中,以单独的文件夹存在

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

  1. .js文件(页面脚本文件,存放页面的数据、事件处理函数等)
  2. .json文件 (当前页面的配置文件,配置窗口的外观、表现等)
  3. .wxml文件(页面的模版结构文件)
  4. .wxss 文件 (当前页面的样式表文件)

这四个文件最终会被编译成一个文件

3.3 JSON配置文件

小程序项目中有4种json配置文件,分别是:

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

3.3.1 app.json文件

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

配置内容demo

{
  "pages":[// 用来记录当前小程序所有页面的路径
    "pages/index/index",
    "pages/logs/logs"
  ],
  "window":{//全局定义小程序所有页面的背景色、文字颜色等
    "backgroundTextStyle":"light",
    "navigationBarBackgroundColor": "#fff",//背景色
    "navigationBarTitleText": "Weixin",
    "navigationBarTextStyle":"black"
  },
  "style": "v2",//全局定义小程序组件所使用的样式版本,旧样式版本直接把此节点删除。
  "sitemapLocation": "sitemap.json"//用来指明sitemap.json的存放位置,此时是与app.map平级
}

3.3.2 project.config.json文件

project.config.json 用来记录对小程序开发工具所做的个性化配置

拷贝其他的demo到本地修改为自己的小程序,修改成自己的appid,避免报错

{
  "description": "项目配置文件",
  "packOptions": {
    "ignore": [],
    "include": []
  },
  "setting": {//编译相关的配置,开发工具本地设置中,可视化修改将同步到这里。
      ....
      //sitemap的索引提示默认是开启的如需要关闭sitemap的索引提示需添加
      "checkSiteMap":"false"
  },
  "compileType": "miniprogram",
  "libVersion": "2.19.4",
  "appid": "",//小程序的账号
  "projectname": "miniprogram-92",//项目名称,不等于小程序名称
  "condition": {},
  "editorSetting": {
    "tabIndent": "insertSpaces",
    "tabSize": 2
  }

3.3.3 sitemap.json文件

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

{
  "desc": "",
  "rules": [{
  "action": "allow",//disallow
  "page": "*"
  }]
}

sitemap的索引提示默认是开启的如需要关闭sitemap的索引提示需在project.config.json的setting中的配置添加"checkSiteMap":“false”

3.3.4 页面的 .json 配置文件

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

{
    "navigationBarBackgroundColor": "#00b26a",
  	"usingComponents": {}
}

4. 小程序页面

4.1 新增小程序页面

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

4.2 修改项目首页

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

小程序会把第一位的页面,当作项目首页进行渲染。

4.3 WXML模版

  • 小程序框架设计的一套标签语言,用来构建小程序页面的结构,类似HTML
  • 和HTML的区别
  1. 标签名称不同
  • HTML(div,span,img,a)
  • WXML(view,text,image,navigator)
  1. 属性节点不同

html <a href=""></a> 
wxml <navigator url=""></navigator>

  1. 提供了类似于Vue中的模版语法
  • 数据绑定
  • 列表渲染
  • 条件渲染

4.4 WXSS样式

  • 一套样式语言,用于描述WXML的组件样式,类似于网页开发中的CSS。

wxss与css的区别

  • 新增了rpx尺寸单位
  • CSS中需要手动进行像素单位换算,例如rem
  • WXSS在底层支持新的尺寸单位rpx,在不同大小的屏幕上小程序会自动进行换算。
  • 提供了全局的样式和局部样式
  • 项目根目录中的 app.wxss 会作用于所有小程序页面
  • 局部页面 .wxss 样式仅对当前页面生效
  • wxss仅支持部分CSS选择器
  • .class 和 #id
  • element
  • 并集选择器、后代选择器
  • ::after和 ::before等伪类选择器

5. 小程序代码构成-JS逻辑交互

小程序中的 .js文件

小程序通过.js文件来处理用户的操作。例如:响应用户的点击、获取用户的位置。

小程序中的JS文件分为三大类

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

6. 小程序的宿主环境

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

小程序宿主环境包含的内容

  1. 通信模型
  2. 运行机制
  3. 组件
  4. API

5.1 通信模型

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

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

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

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

5.2 运行机制

小程序启动的过程

  1. 把小程序的代码包下载到本地
  2. 解析app.json全局配置文件
  3. 执行app.js小程序入口文件,调用App()创建小程序实例
  4. 渲染小程序首页
  5. 小程序启动完成

5.3 页面渲染过程

  1. 加载解析页面的.json配置文件
  2. 加载页面的 .wxml模版和 .wxss样式
  3. 执行页面的 .js文件,调用Page()创建页面实例
  4. 页面渲染完成

第三方服务器之间的通信

  • 由微信客户端进行转发

5.2 运行机制

小程序启动的过程

  1. 把小程序的代码包下载到本地
  2. 解析app.json全局配置文件
  3. 执行app.js小程序入口文件,调用App()创建小程序实例
  4. 渲染小程序首页
  5. 小程序启动完成

5.3 页面渲染过程

  1. 加载解析页面的.json配置文件
  2. 加载页面的 .wxml模版和 .wxss样式
  3. 执行页面的 .js文件,调用Page()创建页面实例
  4. 页面渲染完成


举报

相关推荐

0 条评论