含有自定义组件的三个(及其以上?)组件,按照特定顺序(自定义组件位于首位?)排列,并使用 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 下方的代码打开,就能复现了。下方注释的代码打开,就能复现了。
可以的。只是在开发阶段 getUserInfo 永远不会弹框,就像是用户直接点了弹框里的“拒绝”按钮一样。如果已经通过某种方式授权,getUserInfo 会正常返回。
感谢反馈!这个问题是我们在处理 wx:if .. wx.elif .. wx:else 段落时的一个 bug ,我们会很快修复。
这个问题现在修复了吗
多数情况应该没问题了,不排除一些情况仍有问题。如果遇到,麻烦提供一下代码片段,谢谢!
你好,我现在也遇到了,代码片段如下,是因为使用了自定义组件的原因吗
<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>
这个应该是比较早之前出现过的问题。现在应该修复了才对。
如果是开发者工具的问题,请问开发者工具版本是多少呢?
如果是真机上的问题,麻烦提供一下微信版本号。
然而这个问题依然没有解决
我确认这个问题并没有解决,我也遇到了,不过我的结构确实复杂,一层层嵌进去。
不过解决的办法也很简单,把wx:elif或者wx:else全部改成wx:if就可以了。
我也遇到了 你的办法简直机智
多谢。
如果可以,烦请到上面的帖子中通告一下。
毕竟官方的回复才能平息纷争。
多谢官方人员处理。
另外,有个其他疑问,官方口径不统一,给开发者造成很大困惑,希望能给与明确答复:
已通过 button 方式授权后,是否仍可以使用 getUserInfo 方式获取用户信息?
相关讨论:
小程序与小游戏获取用户信息接口调整,请开发者注意升级。小程序•小故事(6)——微信登录能力优化
操作系统 Windows 10 x64
开发工具 1.02.1804251
移动设备 小米6 miui 9 android 8
要把 <!-- Error: Expect START descriptor with depth 2 but get another --> 下方注释的代码打开,就能复现了。
你好,没能用你的代码片段复现你的问题,可否提供出现问题的机型和微信版本