九涯
九涯
  • 发布:2020-12-07 19:14
  • 更新:2022-12-06 09:41
  • 阅读:7909

uniapp中picker的change事件使用注意

分类:uni-app

说明

uniapp中picker的change事件返回的值在APP端、微信小程序端有区别,如下:

官方示例代码

APP端在vue和nvue模式下的区别

在vue下bindPickerChange事件返回有e.target.value,而在nvue模式下没有此值,所以,如果按官方示例在picker的change事件中使用e.target.value,在nvue模式下,picker组件不能正常使用,代码也不报错(这就是比较坑的一个点)

另:nvue和vue都存在e.detail.value,该值为Number类型,如图

微信小程序端

bindPickerChange事件返回有e.target.value也有e.detail.value,但是类型都为String类型,如图

总结

1.为了全端兼容,picker的change事件返回值最好使用e.detail.value
2.注意APP端change事件返回值是Number类型,微信小程序端则是String类型

0 关注 分享

要回复文章请先登录注册

2***@qq.com

2***@qq.com

回复 2***@qq.com :
我接手的是App
2022-12-06 09:41
2***@qq.com

2***@qq.com

最近我也遇到了这个问题,nvue文件,之前取值是target.value,接手别人代码时这个功能好好的,突然之间不好使了,target下的数值都没value属性,理论上来讲,应该一直有问题,也不知道之前为什么好使的
2022-12-06 09:40
九涯

九涯 (作者)

回复 玉桂 :
我上面就有提到,nvue中picker的change事件,不能使用官方示例的e.target.value去获取返回值,而要使用e.detail.value才能获取到
2021-01-02 20:17
玉桂

玉桂

你好,请问你解决了吗?nvue页面picker change事件获取不到值的问题。。。
2020-12-22 15:09
choin

choin

不是别的地方有也能用的,文档没让用的最好别用
2020-12-07 20:11