小马路
小马路
  • 发布:2021-11-14 21:11
  • 更新:2021-11-23 11:50
  • 阅读:458

【报Bug】HBuilderX编译小程序原生标签是key属性无法编译

分类:HBuilderX

产品分类: HbuilderX

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win10

HBuilderX版本号: 3.2.13

示例代码:

uniapp代码

<share-element key="type" :duration="300" :transform="transformIdx === i">  
      <view class="service-item-box">  
          <image v-for="(m, k) in n.list" :key="k" src="/static/image/ls/fenlei.jpg" />  
    </view>  
</share-element>  

编译后的wxml代码

<share-element vue-id="{{''+i}}" duration="{{300}}" transform="{{transformIdx===i}}" bind:__l="__l"  
               vue-slots="{{['default']}}">  
    <view class="service-item-box">  
        <block wx:for="{{n.list}}" wx:for-item="m" wx:for-index="k" wx:key="k">  
            <image src="/static/image/ls/fenlei.jpg"></image>  
        </block>  
    </view>  
</share-element>  

操作步骤:

uniapp代码

<share-element key="type" :duration="300" :transform="transformIdx === i">  
                        <view class="service-item-box">  
                            <image v-for="(m, k) in n.list" :key="k" src="/static/image/ls/fenlei.jpg" />  
                        </view>  
                    </share-element>  

编译后的wxml代码

<share-element vue-id="{{''+i}}" duration="{{300}}" transform="{{transformIdx===i}}" bind:__l="__l"  
               vue-slots="{{['default']}}">  
    <view class="service-item-box">  
        <block wx:for="{{n.list}}" wx:for-item="m" wx:for-index="k" wx:key="k">  
            <image src="/static/image/ls/fenlei.jpg"></image>  
        </block>  
    </view>  
</share-element>  

预期结果:

uniapp代码

<share-element key="type" :duration="300" :transform="transformIdx === i">  
                        <view class="service-item-box">  
                            <image v-for="(m, k) in n.list" :key="k" src="/static/image/ls/fenlei.jpg" />  
</share-element>  

编译后的wxml代码

<share-element key="type" vue-id="{{''+i}}" duration="{{300}}" transform="{{transformIdx===i}}" bind:__l="__l"  
               vue-slots="{{['default']}}">  
    <view class="service-item-box">  
        <block wx:for="{{n.list}}" wx:for-item="m" wx:for-index="k" wx:key="k">  
            <image src="/static/image/ls/fenlei.jpg"></image>  
        </block>  
    </view>  
</share-element>  

实际结果:

uniapp代码

<share-element key="type" :duration="300" :transform="transformIdx === i">  
                        <view class="service-item-box">  
                            <image v-for="(m, k) in n.list" :key="k" src="/static/image/ls/fenlei.jpg" />  
                        </view>  
                    </share-element>  

编译后的wxml代码,编译后的代码应有key属性

<share-element vue-id="{{''+i}}" duration="{{300}}" transform="{{transformIdx===i}}" bind:__l="__l"  
               vue-slots="{{['default']}}">  
    <view class="service-item-box">  
        <block wx:for="{{n.list}}" wx:for-item="m" wx:for-index="k" wx:key="k">  
            <image src="/static/image/ls/fenlei.jpg"></image>  
        </block>  
    </view>  
</share-element>  

bug描述:

使用微信小程序的原生标签share-element,因为微信里使用key作为属性,在编译后的wxml文件里,该标签无key属性,导致此标签无法正常运行

2021-11-14 21:11 负责人:无 分享
已邀请:
DCloud_UNI_GSQ

DCloud_UNI_GSQ

key 属性被 Vue(2) 用了,目前可以修改一下编译后的产物,后续会考虑一下绕过方案。

  • 曾小晨

    还没好吗,一年了

    2022-07-11 15:25

  • DCloud_UNI_GSQ

    回复 7***@qq.com: 目前 Vue2 可以采用的方案 :key.props

    2022-07-18 17:30

该问题目前已经被锁定, 无法添加新回复