来到文档,我们可以看到左侧的目录,主面板写着开发指南,我们跟着读一遍,了解到了框架、组件、API,这三个应该就是比较核心的。那么接下来我们重点关注这三部分。
首先,学习任何新东西,需要了解个大概。目录入手,起步!
起步
注册账号->进入小程序后台页面(AppID,管理权限,数据报表,发布小程序等)->按照开发工具->创建项目(需要AppID,不使用云服务)
小程序代码构成
主要看下json配置。
app.json差不多也就是管理你整个项目,全局配置。project.config.json管理你的开发者工具,你的个性化设置。page.json管理也页面相关的配置,比如你可能要对某个页面实行不同操作配置。
小程序宿主环境
wxml,wxss -> 渲染层:一层对于一个WebView线程,多个页面多个渲染层js -> 逻辑层:JsCore线程这两之间如何一起工作的 -> 微信客户端,逻辑层的网络请求,也靠它转发。也就是他们做操作会发给微信再由微信发给其他对象
小程序协同工作与发布(这个必看)
用户如何看到我们的小程序
开发完 -> 开发者工具提交小程序代码包 -> 小程序后台发布小程序
到此我们起步算是了解了一遍。接下来就点击小程序开发指南。开始学习!!!
第一章直接不用看了,我总结一下:
两个点,预览,开发者工具顶部中,可以让我们在手机预览小程序;app.json里的pages -> 你直接写上页面名称,自动生成所有文件。其余的要么介绍,要么上面已经提过了。
第二章
json文件,不能写注释,静态的(运行时不能改)。
WXML:
数据绑定:
- 数据绑定->wxml{{}}来获取js中data的数据
- 标签中属性也可以数据绑定,{{}}需要在引号中->动态属性值
条件逻辑:
- wx:if,wx:elif,wx:else
- 一次显示多个组件标签,block包裹
列表循环:
- wx:for,默认下标index,默认项item
- 使用wx:for-index,wx:for-item指定下标名和item名
- block也可以使用wx:for
- 如果列表的项会动态改变,使用wx:key来指明项的唯一标识符,值有两种形式(暂时忽略)
模板:
- template标签,name属性指定模板名,is属性指定使用哪个模板
- data属性可以将模板需要的属性传入
引用:
- import 和 include标签
- import有作用域概念,即文件A引用了模板A,然后文件B引用这个文件A,并不能获取模板A
- include除了
<template/> <wxs/>,其他全部引入
共同属性:
- 所有wx标签都支持的属性
- id,class,style,hidden,data-,bind/catch*
小程序的js脚本:
对于旧手机,勾选es6-》es5选项
模块化
- module.exports 或者 exports 对外暴露接口
- require(path) 引入
执行顺序
app.js为入口文件- 其中
require的模块顺序决定文件的运行顺序 - 当 app.js 执行结束后,小程序会按照开发者在 app.json 中定义的 pages 的顺序,逐一执行。
作用域
- 在文件中声明的变量和函数只在该文件中有效,不同的文件中可以声明相同名字的变量和函数,不会互相影响
- 当要
获取全局变量-> 某个文件中设置getApp()全局函数->设置相关属性getApp().xx= xx -> 另一个文件使用其属性以此来获取全局变量getApp().xx - 也就是app.js中的
App()中的globalData(该属性名可以自定义)定义全局变量数据