9***@qq.com
9***@qq.com
  • 发布:2021-11-02 16:14
  • 更新:2021-11-02 16:23
  • 阅读:391

【报Bug】input组件由父级view使用v-if else控制切换,但是view中的其他组件切换了,input并没有切换

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

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

HBuilderX类型: 正式

HBuilderX版本号: 3.2.9

手机系统: Android

手机系统版本号: Android 12

手机厂商: 小米

手机机型: mi9pro5g

页面类型: nvue

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

切换 longinType 后直接复现

预期结果:

input将切换为对应view中的input

实际结果:

始终是第一个view中的input

bug描述:

<view v-if="longinType === 'psw'" class="a-input">  
    <view class="input-box">  
        <input placeholder="请输入密码" class="input" id="i1" v-model="password" :password="showPsw" />  
        <view class="input-btn is-icon" @tap="showPsw=!showPsw">  
            <text v-if="showPsw" class="qd-icon input-btn-text">&#xe63e;</text>  
            <text v-else class="qd-icon input-btn-text">&#xe62b;</text>  
        </view>  
    </view>  
    <text class="tip-text input-tips">请输入密码</text>  
    <text v-if="showErrPsw" class="err-text input-tips" style="bottom: 0;">{{showErrPsw}}</text>  
</view>  

<view v-else class="a-input">  
    <view class="input-box">  
        <input placeholder="请输入验证码" class="input" id="i2" type="number" v-model="ecode" />  
        <view v-if="ecodeTime"  class="input-btn is-code disable">  
            <text class="input-btn-text">{{ecodeTime}}s</text>  
        </view>  
        <view v-else  class="input-btn is-code" @tap="sendSms">  
            <text class="input-btn-text">获取验证码</text>  
        </view>  
    </view>  
    <text class="tip-text input-tips">请输入验证码</text>  
    <text v-if="showErrEcode" class="err-text input-tips" style="bottom: 0;">{{showErrEcode}}</text>  
</view>
2021-11-02 16:14 负责人:无 分享
已邀请:
onion一只洋葱

onion一只洋葱 - 一只前端

应该是渲染机制的问题,虚拟dom检测到dom结构一致,所以沿用了最初的dom模型去渲染。
我建议给input绑一个v-if,或者用v-show来操作判断

  • 9***@qq.com (作者)

    我尝试修改了dom结构,没有效果;给input单独绑定了v-if,没有效果;nvue没有v-show。

    2021-11-02 16:51

  • onion一只洋葱

    回复 9***@qq.com: 那我建议你封装成组件,或者把这两个input合成一个

    2021-11-02 17:15

  • 9***@qq.com (作者)

    回复 onion一只洋葱: 没有效果,我最后只能把这个需求做成页面切换

    2021-12-30 14:23

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