本文主要是介绍微信小程序学习(八):behaviors代码复用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
小程序的 behaviors
方法是一种代码复用的方式,可以将一些通用的逻辑和方法提取出来,然后在多个组件中复用,从而减少代码冗余,提高代码的可维护性。
如果需要 behavior
复用代码,需要使用 Behavior()
方法,每个 behavior
可以包含一组属性、数据、生命周期函数和方法
组件引用它时,它的属性、数据和方法会被合并到组件中,生命周期函数也会在对应时机被调用。
1、注册 behavior
如果需要注册一个 behavior
,需要借助 Behavior()
方法,接受一个 Object
类型的参数
// my-behavior.js
module.exports = Behavior({behaviors: [],properties: {myBehaviorProperty: {type: String}},data: {myBehaviorData: 'my-behavior-data'},created: function () {console.log('[my-behavior] created')},attached: function () {console.log('[my-behavior] attached')},ready: function () {console.log('[my-behavior] ready')},methods: {myBehaviorMethod: function () {console.log('[my-behavior] log by myBehaviorMehtod')},}
})
2、使用 behavior
// my-component.js
const myBehavior = require('my-behavior')Component({behaviors: [myBehavior]// coding...
})
3、同名字段
组件和它引用的 behavior 中可以包含同名的字段,对这些字段的处理方法如下:
- 如果有同名的
属性或方法
,采用 “就近原则”,组件会覆盖 behavior 中的同名属性或方法 - 如果有同名的数据字段且都是
对象类型
,会进行对象合并,其余情况会 采用 “就近原则” 进行数据覆盖 生命周期函数
和 observers 不会相互覆盖,会是在对应触发时机被逐个调用,也就是都会被执行
这篇关于微信小程序学习(八):behaviors代码复用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!