1.0.2 • Published 3 years ago

@mas.io/mas-loader v1.0.2

Weekly downloads
-
License
ISC
Repository
-
Last release
3 years ago

mas-loader

TNPM version TNPM downloads

Badges

TNPM version TNPM downloads install size


行业小程序mas-loader组件,主要解决页面请求管理问题。

  1. 无需手动管理设置加载状态,通过onFetch方法返回的Promise统一管理。
  2. 只有当组件处于可见状态时,才会触发加载,即使手动进行刷新。

install

tnpm install --save @alipay/mas-loader

props

属性必填参数类型参数说明默认值示例
nowNnumber主要用于触发refresh,使组件重新触发fetch事件,也可通过refresh方法直接调用触发Date.now()
onFetchYPromise组件触发fetch事件时设置return Promise.resolve()
classNameNstring同常规组件的class

methods

方法方法说明
refresh手动调用refresh方法触发fetch事件

slots

方法方法说明默认值
default当完成加载并且成功时显示的内容
loading可设置加载时的内容显示mini-ali-ui/loading
error设置失败时的内容显示mini-ali-ui/page-result

usage

{
  "usingComponents": {
    "mas-loader": "@alipay/mas-loader/es/index"
  }
}
<mas-loader onFetch="onFetch">
  <view a:for="{{ list }}">{{ item }}</view>
</mas-loader>
onFetch() {
  return new Promise((resolve, reject) => {
    setTimeout(Math.random() < 0.5 ? resolve, reject, 3000);
  }).then(() => {
    this.setData({list: new Array(10).fill(0).map(() => Math.random())})
  })
}