收藏
回答

自定义组件中的wx:for对象数组循环如何做到可复用?

自定义了一个组件text-list-comp,主要功能是实现对象数组的列表渲染

在一个页面中调用没有问题

目前想在多个页面中调用这个组件,对象数组可以通过list传入,但是渲染时每个页面需要的item.XXXX值是不一样的,尝试了很多办法没有成功。

有没有办法通过变量传递,用{{item.变量}}的形式修改组件,做到多个页面以及多个对象数组可以复用。

谢谢!





回答关注问题邀请回答
收藏

5 个回答

  • 阿旺
    阿旺
    2021-02-18

    像上面的老哥说的,多传一个key(params此时为Object类型为好) 然后这个对象中有3个属性和组件中的三个位置相对应,可以是 title,desc,remark;

    组件内部新增额外处理:

    引用

    这样一来每次根据不同的环境,更换不同的title,desc,remark的值就可以做到你想要的复用效果。(如果不能使用对象字面量的形式传入的话,可以更换成数组形式,将组件内部改用params[0],params[1],params[2]即可)


    2021-02-18
    有用
    回复
  • 跨商通
    跨商通
    2021-02-14

    用template吧。

    <template is='{{变量}}>

    2021-02-14
    有用
    回复
  • brave
    brave
    2021-02-14
    <view wx:if="{{item.A}}">{{item.A}}</view>
    <view wx:if="{{item.B}}">{{item.B}}</view>
    ....
    
    2021-02-14
    有用
    回复
  • Vinlic
    Vinlic
    2021-02-14

    传多一个key不就可以吗?

    2021-02-14
    有用
    回复
  • 干煸小黄鱼儿
    干煸小黄鱼儿
    2021-02-14

    组件里不要放太多的特殊处理。在页面里处理好list之后,传入组件展示

    2021-02-14
    有用
    回复
登录 后发表内容
问题标签