收藏
回答

关于component的多次实例之间的通讯问题

问题模块 框架类型 问题类型 终端类型 微信版本 基础库版本
框架 小程序 Bug 工具 6.6.7 1.9.94



红色箭头指的编辑帖子的模块写成了一个component__postsEdit,然后把它丢到了componet_posts,也主是帖子组件里,然后循环了一下帖子,生成了这么个列表.


现在通过点击下箭头ICON是能够显示和隐藏操作选项, 但是打开A的操作选项后,再去打开B的操作选项,A的操作选项没有自动隐藏,现在需求要求能够在点击下箭头时隐藏其他下箭头的操作选项,我该怎么做.


我感觉是因为每个实例都只在自己作用域里生效导致的这个问题.


下面,我贴一下代码:




上图:控制操作选项显示和隐藏



上图:component_postsEdit的wxml文件




上图:wxml里使用component_postsEdit



最后一次编辑于  2018-06-27  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏关注问题回答

5 个回答

  • 卢霄霄
    卢霄霄
    2018-06-27

    建议不在 component里隐藏其他的菜单,将隐藏和显示的菜单放到 page的 wx:for="{{list}}"列表里的一个属性list[0].showMenu,postsEdit组件里 observe这个属性。当点了某一个时,把点击的这一项的 index存起来(比如叫 currentIndex)。下次点另一个的时候,先判断currentIndex是否有值,有值的话,就setData showMenu=false。

    2018-06-27
    赞同 11
    回复 4
    • morganfly
      morganfly
      2018-06-27

      感谢


      2018-06-27
      赞同
      回复
    • 卢霄霄
      卢霄霄
      2018-06-27回复morganfly

      卧槽。。我还在等你问我,说的什么鬼意思呢。。你就感谢了?

      2018-06-27
      赞同
      回复
    • morganfly
      morganfly
      2018-06-27回复卢霄霄

      就是把控制隐藏的变量放到了v-for循环的级别里了,是这个意思吧

      2018-06-27
      赞同
      回复
    • 卢霄霄
      卢霄霄
      2018-06-27回复morganfly

      嗯嗯嗯嗯嗯嗯

      2018-06-27
      赞同
      回复