Skip to content

文件配置及作用 ​

  • 可设置 action 属性让 当前页面 [pages/index/index] 不被索引
js
"action": "disallow",

项目创建 ​

  • WXML 是用来构建页面结构类似于 HTML
  • WXSS 是用来控制页面样式类似于 CSS

自定义编译模式 ​

  • 当我们开发时会默认跳转到 index 页面而不是我们当前正在编写的页面,这时可以通过自定义编译模式来解决

全局配置文件及配置使用 ​

window ​

window 常用配置 ​

window 节点配置 ​

  • 打开项目根目录下 app.json 进行设置
json
"window":{
    "backgroundTextStyle":"light", // 控制下拉 loading 样式且只有 light 或 dark 两个可选值
    "navigationBarBackgroundColor": "#380", // 用于设置导航条背景颜色
    "navigationBarTitleText": "test", // 用于设置小程序顶部标题
    "navigationBarTextStyle":"white", // 用于设置顶部标题文本颜色且只能设置 white 或 black 两种颜色
    "enablePullDownRefresh": true, // 开启全局下拉刷新
    "backgroundColor": "#000", // 控制下拉刷新窗口的背景颜色
    "onReachBottomDistance": 50 // 控制上拉触底刷新内容的距离,默认为50px且不带单位
},

tabBar ​

具体配置 ​

节点配置项 ​

每个 tab 项配置 ​

具体使用配置 ​

  • 打开项目根目录下 app.json 与 window 节点同级下创建 tabBar 进行设置
json
"tabBar": {
    "list": [ // 设置 tab 页列表,最少2个最多5个
        {
            "pagePath": "pages/index/index", // 配置当前 tab 页的路径
            "text": "首页" // 配置当前 tab 页文字标题
        },
        {
            "pagePath": "pages/logs/logs",
            "text": "logs"
        }
    ]
}

wxss(微信小程序样式) ​

rpx 单位 ​

组件使用 ​

view 组件使用 ​

scroll - view 组件使用 ​

swiper 组件 ​

text、rich-text 组件使用 ​

其他组件(button、image) ​

  • button 组件
  • image 组件

代码规范 ​

模板语法和定义数据 ​

动态绑定属性 ​

三元运算 ​

wx:if (类似 vue 的 v-if) ​

控制多个组件 ​

hidden(类似于 vue 的 v-show) ​

hidden 与 wx:if 区别 ​

wx:for 列表渲染 ​

  • 自定义索引名和当前项名称
  • wx:key

事件绑定 ​

事件对象 ​

target 和 currentTarget 区别 ​

bindtap 事件使用(手指点击) ​

在事件中处理 data 中数据 ​

事件传参 ​

bindinput 事件(表单输入) ​

  • 使用 bindinput 事件实现文本框与 data 数据双向绑定
html
<!-- value 可为 input 输入框绑定默认值 -->
<input type="text" value="{{message}}" bindinput="inputHanddler"></input>
js
inputHanddler(e){
    this.setData({
        message:e.detail.value // 将文本框的值与 data 的值互相绑定
    })
},

下拉刷新事件 ​

停止下拉刷新效果 ​

上拉触底事件 ​

添加 loading 提示效果 ​

提示消息 ​

js
// 可用于数据加载完毕提示用户
wx.showToast({
    title:'数据加载完毕!',
    icon:'none'
})

小程序的生命周期函数 ​

应用级生命周期 ​

页面级生命周期函数 ​

组件全部生命周期函数 ​

触发时机细节 ​

定义方法 ​

  • 和 data、method 同级定义 lifetimes

组件所在页面生命周期函数 ​

定义方法 ​

数据请求 ​

发起 get 请求 ​

在页面刚加载时就请求数据 ​

页面导航 ​

声明式导航 ​

导航到 tabBar 页面 ​

导航到非 tabBar 页面 ​

后退导航 ​

声明式导航传参 ​

编程式导航 ​

导航到 tabBar 页面 ​

  • 代码示例

导航到非 tabBar 页面 ​

后退导航 ​

  • 代码示例

编程式导航传参 ​

在 onLoad 中接收导航参数 ​

wxs 脚本 ​

基本使用 ​

内嵌 wxs 脚本 ​

外链 wxs 脚本 ​

  • 引用外链 wxs 脚本

wxs 脚本和 js 对比 ​

不能作为组件的事件回调 ​

隔离性 ​

性能好 ​

自定义组件 ​

自定义组件局部引用 ​

自定义组件全局引用 ​

在 app.json 文件下 和 window 节点同级下新增 usingComponents 节点进行添加组件

组件和页面的区别 ​

组件样式 ​

样式隔离 ​

组件数据、方法、属性 ​

data 数据 ​

methods 方法 ​

组件传值(类似于 vue 的 props) ​

data 和 properties 区别 ​

  • 和 vue 不同的是通过外界传递过来的数据 properties 是可以读写的

修改外界传递过来的数据 properties ​

监听器 ​

具体用法 ​

监听对象属性变化(多个数据) ​

监听所有属性变化 ​

纯数字字段 ​

使用规则 ​

组件插槽 ​

启用多个插槽 ​

定义多个插槽 ​

使用多个插槽 ​

组件通信 ​

属性绑定(父传子) ​

  • 父组件传递给子组件的数据,子组件修改了不会影响到父组件数据
  • 在子组件接收

事件绑定传值(子传父) ​

具体实现 ​

获取组件实例 ​

behaviors 代码混入 ​

创建 ​

导入及使用 ​

behaviors 中所有可用节点 ​

API Promise 化 ​

bash
npm i miniprogram-api-promise

组件调用 ​

全局数据共享方案 ​

基本概念 ​

安装 ​

bash
npm i --save mobx-miniprogram mobx-miniprogram-bindings

创建 Mobx Store 实例 ​

  • 在项目根目录创建 store 文件再创建 Store.js

引入共享数据 ​

在页面上使用 ​

在组件中使用 ​

小程序分包 ​

基本概念 ​

分包构成 ​

分包的加载规则 ​

分包体积限制 ​

配置方法 ​

分包引用原则 ​

独立分包 ​

应用场景 ​

配置方法 ​

引用原则 ​

分包预下载 ​

配置预下载 ​

预下载限制 ​

api 配置 ​

json
"navigationBarBackgroundColor": "#000" // 用来修改页面顶部颜色