• 博客园logo
  • 会员
  • 周边
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
Roséa
😘正是你花费在玫瑰上的时间才使得你的玫瑰花珍贵无比...
博客园    首页    新随笔    联系   管理    订阅  订阅
小程序框架开发笔记-wepy
小程序wepy开发框架笔记

WePY

一、前置

本地使用版本V1.7.3
最新版本V2.x

      

     

 

二、使用

export class App extends wepy.app {} 小程序入口,App基类

wepy.page注册页面

wepy.component注册组件

wepy.app 入口

方法:use(‘使用中间件’)

  this.use('requestfix'); //'requestfix':修复小程序请求并发问题

  this.use('promisify'); //'promisify':使用wepy.xxx的方式请求小程序原生API都将Promise化

属性 $wxapp:Object: this.$wxapp 等同于getApp()

 

wepy.component 组件

import wepy from 'wepy' // 引入wepy

export default class Message extends wepy.component {

  // 创建组件实例 props = { /* 接收参数 */ } onShow(){ /* 无用 */ } }

组件

this.$invoke('./ComB', 'func1', 'p1', 'p2'); //调用另一组件的方法

this.$emit()  //组件发起一个冒泡事件

$nextTick([func:Function]):
  组件数据绑定完成后的回调事件;在不传入function时,返回一个promise对象
  this.$nextTick().then()

 

wepy.page 页面

this.$parent 

this.$broadcast('isFixed')   //广播事件,通知子组件执行isFixed方法

this.$apply()  //wepy 在异步函数中更新数据的时候,必须手动调用$apply方法,才会触发脏数据检查流程的运行

  *在 $emit 或者 $broadcast 事件中,调用 $destroy 事件终止事件的传播。

 

三、备注:

  1、this.$apply()使用场景:(wepy1.x中method中方法不需要,自定义方法、onshow()中需要)

    1.1异步更新数据

    1.2.手动刷新DOM

    1.3.子组件的onload周期使用

  2、wepy1使用脏检查进行数据绑定,wepy2使用vue Observer实现数据绑定,不用$apply();

 

四、记录

  1、Wepy中ES6使用

    wepy 中使用async/await , 需要npm安装'wepy-async-function',npm install wepy-async-function –save  

    在app.wpy文件里引入 import 'wepy-async-function'

    async函数是异步操作

    采用promise封装异步请求的API,可以return new Promise

       return new Promise(function(resolve,reject){}).then()  

  2、Page实例继承Component,即Page也是组件

      onShow () {} // 只在Page中存在的页面生命周期函数             

        onLoad () {} // 在Page和Component共用的生命周期函数         

  3、自定义方法位置(重要)

    通自定义方法在methods对象外声明,与methods平级

 

 

 

 

posted on 2021-10-15 11:09  Roséa  阅读(102)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3