收藏
回答

template 是否支持递归的template?

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

template 中递归调用,调试时前台直接警告
template 中可以存在递归吗?

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

4 个回答

  • 灵芝
    灵芝
    2018-07-31

    你好,请具体描述问题出现的流程,并提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

    2018-07-31
    有用 1
    回复 4
  • 风行
    风行
    2019-07-07

    template是本身是不可以递归的,但可以通过其他方法来做到递归,因为我就实现了。


    我简单说一下思路,至于实例代码有点多。

    1、和写递归函数一样,得有一个终结条件,否则无限递归没有意义。

    2、写两个一样的模板,互相调用,当条件满足时,需要对子组件递归时,用另一个模板。

    关键是一定得有两个一样的模板,互相调用,当然模板名称不能相同。

    3、还有一个问题,如果只写两个只能循环调用5层,就会报警告发现递归了,解决这个问题还可以把同样的模板再复制几份,依次调用,最后成一个循环

    如:     template1 调用 template2 ,

        template2 调用 template3,

        template3 调用 template4 

        template4 调用 template1 

    一定要形成闭环,当然,不建议太多的层,毕竟性能会有影响。


    2019-07-07
    有用
    回复 2
    • 宇之
      宇之
      2019-08-02
      你好,我试了一下,还是提示了模板被递归调用,请问有代码可以参考吗
      2019-08-02
      回复
    • 小和尚
      小和尚
      2019-08-03
      template4调用template1时候会报错的,只能不断地去调用template56789……
      2019-08-03
      回复
  • 开心
    开心
    2018-08-30

    把template 改成自定义组件好像就可以了。

    2018-08-30
    有用
    回复 2
    • 小和尚
      小和尚
      2019-07-04

      请问是什么意思呀

      2019-07-04
      回复
    • 开心
      开心
      2019-07-17回复小和尚
      自定义组件支持递归
      2019-07-17
      回复
  • 白开水
    白开水
    2018-08-01

    template 支持嵌套。参考代码片段 wechatide://minicode/LW3zAlmM75Al

    2018-08-01
    有用
    回复 1
    • Linsee
      Linsee
      2018-08-01

      嵌套试过满足不了需求,children的子children数量不确定,有没有其他方案可以实现递归效果的template 

      2018-08-01
      回复
登录 后发表内容