收藏
回答

Expect START descriptor with depth 2 but

框架类型 问题类型 终端类型 操作系统 微信版本 基础库版本
小程序 Bug 微信iOS客户端 6.6.6 2.0.2



含有自定义组件的三个(及其以上?)组件,按照特定顺序(自定义组件位于首位?)排列,并使用 wx:if wx:elif wx:else 条件动态切换组件的渲染,会报错:Error: Expect START descriptor with depth 2 but get another


发现调整自定义组件顺序,或使用 block 两两分割组件可避免报错。但 block 使用条件动态切换,超过三个也会出问题。

具体细节请查看代码片段 wechatide://minicode/7sThr6m66YZL


要把 index.wxml 中注释 Error: Expect START descriptor with depth 2 but get another 下方的代码打开,就能复现了。下方注释的代码打开,就能复现了。

最后一次编辑于  2018-05-02
回答关注问题邀请回答
收藏

8 个回答

  • LastLeaf
    LastLeaf
    2018-05-02

    可以的。只是在开发阶段 getUserInfo 永远不会弹框,就像是用户直接点了弹框里的“拒绝”按钮一样。如果已经通过某种方式授权,getUserInfo 会正常返回。

    2018-05-02
    有用
    回复
  • LastLeaf
    LastLeaf
    2018-05-02

    感谢反馈!这个问题是我们在处理 wx:if .. wx.elif .. wx:else 段落时的一个 bug ,我们会很快修复。

    2018-05-02
    有用
    回复 8
    • Neo
      Neo
      2018-07-10

      这个问题现在修复了吗

      2018-07-10
      回复
    • LastLeaf
      LastLeaf
      2018-07-10

      多数情况应该没问题了,不排除一些情况仍有问题。如果遇到,麻烦提供一下代码片段,谢谢!

      2018-07-10
      回复
    • 樊梦莹
      樊梦莹
      2018-07-20回复LastLeaf

      你好,我现在也遇到了,代码片段如下,是因为使用了自定义组件的原因吗


      <view wx:if="{{current.join && !next.join}}" class='next-joininfo'>

      </view>

      <view wx:elif="{{current.join && next.join}}">

      </view>

      <rules wx:else type="2"></rules>


      2018-07-20
      回复
    • LastLeaf
      LastLeaf
      2018-07-20

      这个应该是比较早之前出现过的问题。现在应该修复了才对。


      1. 如果是开发者工具的问题,请问开发者工具版本是多少呢?

      2. 如果是真机上的问题,麻烦提供一下微信版本号。

      2018-07-20
      回复
    • FlashFact
      FlashFact
      2018-08-13回复LastLeaf

      然而这个问题依然没有解决

      2018-08-13
      1
      回复
    查看更多(3)
  • 郑波
    郑波
    2018-07-21

    我确认这个问题并没有解决,我也遇到了,不过我的结构确实复杂,一层层嵌进去。

    不过解决的办法也很简单,把wx:elif或者wx:else全部改成wx:if就可以了。


    2018-07-21
    有用
    回复 1
    • ······
      ······
      2018-07-24

      我也遇到了 你的办法简直机智

      2018-07-24
      回复
  • 2018-05-02

    多谢。

    如果可以,烦请到上面的帖子中通告一下。

    毕竟官方的回复才能平息纷争。

    2018-05-02
    有用
    回复
  • 2018-05-02

    多谢官方人员处理。


    另外,有个其他疑问,官方口径不统一,给开发者造成很大困惑,希望能给与明确答复:

    已通过 button 方式授权后,是否仍可以使用 getUserInfo 方式获取用户信息?

    相关讨论:

    小程序与小游戏获取用户信息接口调整,请开发者注意升级。小程序•小故事(6)——微信登录能力优化

    2018-05-02
    有用
    回复
  • 2018-05-02

    操作系统 Windows 10 x64

    开发工具 1.02.1804251

    移动设备 小米6 miui 9 android 8

    2018-05-02
    有用
    回复
  • 2018-05-02

    要把 <!-- Error: Expect START descriptor with depth 2 but get another --> 下方注释的代码打开,就能复现了。

    2018-05-02
    有用
    回复
  • 疯狂的小辣椒
    疯狂的小辣椒
    2018-05-02

    你好,没能用你的代码片段复现你的问题,可否提供出现问题的机型和微信版本

    2018-05-02
    有用
    回复
登录 后发表内容