小程组件的behaviors属性

behaviors可以解决组件间代码的复用性的问题,每个behavior可以包含一组属性、数据、生命周期函数和方法。组件引用时候,他的属性、数据和方法会被 合并 到组件中,生命周期函数也会在对应时机被调用。每个组件可以引用多个behavior, behavior也可以引用其他的behavior。说白了,behavior是一种变相的组件。

1、定义behaviors

  behavior是以 .js 结尾的文件,可以在components下面增加一个behaviors文件夹存放。

const paginationBev = Behavior({
  data: {
    dataArray: [],
    total: null,
    noneResult: false,
    loading: false
  },

  methods: {
    setMoreData(data) {
      const tempArray = this.data.dataArray.concat(data)
      this.setData({
        dataArray: tempArray
      })
    },
}

export {paginationBev }

2、注册behavior的参数

 3、使用behavior

第一,首先引入behavior,使用import和require都可以

import {
  paginationBev
} from '../behaviors/pagination.js'

第二,在component中,用behaviors属性注册

Component({
  behaviors: [paginationBev],
  properties: {
    more: {
      type: String,
      observer: 'loadMore'
    }
  ...
  ...
},

这样就能复用behavior中的属性、方法、生命周期函数等

原文地址:https://www.cnblogs.com/dgxblogs/p/11474707.html