jdf2e / nutui

京东风格的移动端 Vue 组件库,支持多端小程序(A Vue.js UI Toolkit for Mobile Web)
https://nutui.jd.com
MIT License
6.17k stars 835 forks source link

input组件的update:model-value方法中打印val会打印3次 #2943

Open Xhyen opened 8 months ago

Xhyen commented 8 months ago

NutUI 包名

@nutui/nutui

NutUI 版本号

4.3.1

平台

weapp

重现链接

https://nutui.jd.com/taro/vue/4x/#/zh-CN/component/input

重现步骤

在update:model-value方法中用console.log(val)

期望的结果是什么?

输出一次

实际的结果是什么?

输出3次结果

环境信息

Taro CLI 3.6.24 environment info: System: OS: macOS 14.3.1 Shell: 5.9 - /bin/zsh Binaries: Node: 16.14.0 - ~/.nvm/versions/node/v16.14.0/bin/node Yarn: 1.22.21 - /opt/homebrew/bin/yarn npm: 8.3.1 - ~/.nvm/versions/node/v16.14.0/bin/npm npmPackages: @tarojs/cli: 3.6.24 => 3.6.24 @tarojs/components: 3.6.24 => 3.6.24 @tarojs/helper: 3.6.24 => 3.6.24 @tarojs/mini-runner: 3.6.24 => 3.6.24 @tarojs/plugin-framework-vue3: 3.6.24 => 3.6.24 @tarojs/plugin-html: 3.6.24 => 3.6.24 @tarojs/plugin-platform-h5: 3.6.24 => 3.6.24 @tarojs/plugin-platform-weapp: 3.6.24 => 3.6.24 @tarojs/runtime: 3.6.24 => 3.6.24 @tarojs/shared: 3.6.24 => 3.6.24 @tarojs/taro: 3.6.24 => 3.6.24 @tarojs/webpack-runner: 3.6.24 => 3.6.24 @tarojs/webpack5-runner: 3.6.24 => 3.6.24 babel-preset-taro: 3.6.24 => 3.6.24 eslint-config-taro: 3.6.24 => 3.6.24

其他补充信息

No response

eiinu commented 8 months ago

https://github.com/jdf2e/nutui/blob/1b105983d9c497e79cd58361b1afc6c0696f2f97/src/packages/__VUE/input/index.taro.vue#L229-L230

已知问题,由于小程序的非完全受控 input 组件 & Taro 框架处理逻辑,难以在单次 emit 过程中完成 Input 组件视图、数据的更新。