收藏
回答

behavior同命属性data,数据字段不全是object时,不满足文档描述的覆盖规则

框架类型 问题类型 终端类型 微信版本 基础库版本
小程序 Bug 工具 8.0.18 2.21.3

若同名的数据字段都是对象类型,会进行对象合并;

其余情况会进行数据覆盖,覆盖规则为:组件 > 父 behavior > 子 behavior 、 靠后的 behavior > 靠前的 behavior。(优先级高的覆盖优先级低的,最大的为优先级最高)

比如:同名属性data333

// 组件coma.js

behaviors: [Behavior000, Behavior111],

  data: {

    data333: {a: 'coma'},

  },

// Behavior000.js

  data: {

    data333: true,

  },

// Behavior111.js

  data: {

    data333:[1, 2, 3],

  },

behaviors: [Behavior333],

// Behavior111.js嵌套了Behavior333.js

  data: {

    data333: {a:"a3",b:3, c: [1,2 ,3, 4]},

  },

返回的是: data333: [1, 2, 3]

不符合data中同名属性,不全是object时,覆盖的规则。


回答关注问题邀请回答
收藏
登录 后发表内容