uView2.0 icon indicating copy to clipboard operation
uView2.0 copied to clipboard

u-input组件H5端,当value值变化的时候触发了input和change事件

Open MI-Class opened this issue 3 years ago • 0 comments

版本

2.0.33

转载链接

www.uviewui.com

重现步骤




<template>
	<view>
		<u-input @input="input($event,1)" border="none" :value="getValue.a" type="digit"></u-input>
		<u-input @input="input($event,2)" border="none" :value="getValue.b" type="digit"></u-input>
	</view>
</template>
<script>
	export default {
		data() {
			return {
				valueObj: {
					type: 0,
					value: 0
				}
			}
		},
		methods: {
			input: function(e, a) {
				this.valueObj = {
					type: a,
					value: e,
				}
			},
		},
		computed: {
			getValue: function() {
				const v = this.valueObj.value;
				if (v == "") {
					return {
						"a": "",
						"b": "",
						"c": "",
						"d": "",
						"e": "",
						"f": "",
						"g": "",
					}
				}
				switch (this.valueObj.type) {
					case 1:
						return {
							"a": v,
							"b": v * 10
						};
					case 2:
						return {
							"a": v * 0.1,
								"b": v
						}
				}
			}
		}
	}
</script>

期望的结果是什么?

当在第一个input中输入内容的时候第二个的input的input事件不应该触发

实际的结果是什么?

当第一个input中输入内容的时候,第二个input的input事件也触发了,change事件也触发了


主要是做一个单位转换的东西,可能多个input组件一起用,在任意一个input组件里输入数字后,其他input自动显示对应单位转换后的值,理论上没有焦点的input组件的value即使变化了也不应该触发input事件,甚至change事件也不应该触发。 微信小程序端没问题,但是h5端就出现的上面的问题。目前只用到了这两端,其他端没有验证。

MI-Class avatar Jul 07 '22 06:07 MI-Class