taro 嵌套条件语句会导致编译代码结果有错

hfwmuf9z  于 2个月前  发布在  其他
关注(0)|答案(1)|浏览(27)

相关平台

微信小程序

复现仓库

git@github.com:xingleibinghun/taro2_debug.git
**小程序基础库: 无关小程序版本**
使用框架: React

复现步骤

对比 src/pages/index/index.jsx 和 dist/pages/index/index.wxml 就能看到差异了,或者重新运行一遍 yarn build:weapp 也行。

期望结果

<template name="renderClosureCustom"> <block> <block wx:if="{{isA}}"> <view>A</view> </block> <block wx:elif="{{isB && isC}}"> <view>C</view> </block> <block wx:elif="{{isB}}"> <view>D</view> </block> </block> </template>

实际结果

<template name="renderClosureCustom"> <block> <block wx:if="{{isA}}"> <view>A</view> </block> <block wx:elif="{{isC}}"> <view>C</view> </block> <block wx:elif="{{isB}}"> <view>D</view> </block> </block> </template>

环境信息

Taro CLI 2.2.22 environment info:
        System:
        OS: macOS 14.0
        Shell: 5.9 - /bin/zsh
        Binaries:
        Node: 14.15.4 - ~/.nvm/versions/node/v14.15.4/bin/node
        Yarn: 1.22.17 - ~/.nvm/versions/node/v14.15.4/bin/yarn
        npm: 6.14.10 - ~/.nvm/versions/node/v14.15.4/bin/npm
        npmPackages:
        @tarojs/components: 2.2.22 => 2.2.22
        @tarojs/mini-runner: 2.2.22 => 2.2.22
        @tarojs/router: 2.2.22 => 2.2.22
        @tarojs/taro: 2.2.22 => 2.2.22
        @tarojs/taro-h5: 2.2.22 => 2.2.22
        @tarojs/taro-rn: 2.2.22 => 2.2.22
        @tarojs/webpack-runner: 2.2.22 => 2.2.22
        eslint-config-taro: 2.2.22 => 2.2.22
        stylelint-config-taro-rn: 2.2.22 => 2.2.22
        stylelint-taro-rn: 2.2.22 => 2.2.22

补充信息

我是在 2.2.22 版本复现的,issue 版本选择中没有这个选项,所以临时选了 2.2.18,不过因为不是新版本问题,我在 2.2.13 中也复现了。

2izufjch

2izufjch1#

Taro 代码:

编译后代码:

期望的编译后代码:

相关问题