wepyKit

wepy框架工具集,与框架耦合的内容在此处实现

Source:

Members

(static, constant) NavRefine

Source:

wepy提供的路由模块,格式与wx路由模块一致,额外做了些优化处理,如:支持prefetch

Methods

(static) getCurWepyPage()

Source:

获取当前页面对应的wepy实例

Returns:

wepyPage

(static) pageRestoreHandler(route, context) → {Object}

Source:

页面数据恢复函数,用于

  1. wepy实例覆盖问题,存在两级同路由页面时,前者数据会被后者覆盖,返回时需予以恢复,详见bug:两级页面为同一路由时,后者数据覆盖前者
  2. 无限层级路由策略中,层级过深时,新开页面会替换前一页面,导致前一页面数据丢失,返回时需予以恢复
Parameters:
Name Type Description
route History~Route

页面路由对象

context string

数据丢失场景: tainted - 实例覆盖问题导致的数据丢失 | unloaded - 层级问题导致的数据丢失

Returns:

处理结果,格式形如:{succeeded: true}

Type
Object

(static) registerPageHook(hook, handler)

Source:

注册全局页面钩子
注:页面中若有自定义同名钩子,则全局钩子会被覆盖,需要手动触发,如: 页面有自定义onUnload时需在onUnload中调用 super.onUnload && super.onUnload();

Parameters:
Name Type Description
hook string

页面生命周期钩子名称

handler function

处理函数

(static) registerToThis(lib|name, propMap|value)

Source:

注册全局this属性

Example
//通过键值对的方式一次注册一个属性
 registerToThis('$navigateTo', wx.navigateTo);
 registerToThis('$redirectTo', wx.redirectTo);
 //则所有页面&组件可以以 this.$navigateTo 的形式调用 wx.navigateTo
 
 //通过 库-映射表 的方式一次注册多个属性
 registerToThis(wx, {
   '$navigateTo': 'navigateTo', 
   '$redirectTo': 'redirectTo'
 });
 //则所有页面&组件可以以 this.$navigateTo 的形式调用 wx.navigateTo
Parameters:
Name Type Description
lib|name Object | string
propMap|value Object | *