用自带的HOOKS、useState(),设置数据失败,console可以获取数据,请教下是哪里设置错了?谢谢!版本是最新的
-
-
测试了下,在单独的useEffect里面可以设置,没有问题
-
顶一下,有知道的大侠留个言,谢谢各位
-
复现不了,cli 和依赖都升级到最新版再试试
-
首先!万分感谢帮助解答,我刚刚用 taro doctor 检测了下是1.3.25版本的,没有发现异常;
而且我也安装您上面提供的事例,自己写了一个,也完全没有问题,都可以实现,就是我这个案例奇怪了,我要好好研究下;;有新进展我会及时更新,方便有碰到此类问题的小伙伴!!^_^
-
不容易哈^_^!经过一步一步的调试,微信小程序里面挨个打断点;终于知道原因了,页面周期弄的有问题,但是怎么解决,暂时还真没有解决的方案;再摸索看看吧;总之是一个很奇怪的执行顺序;(对了,我这个是一个页面点击事件,跳转到另一个页面的情况,想在另一个页面获取上个页面传递过去的数据类似 如 'path?key=value&key2=value2')当然我用的是Taro.eventCenter
//a.tsx
function open() {
console.log('点击了')
Taro.eventCenter.trigger('abc', { carName: 'yyy' })
Taro.navigateTo({
url:../../pages/detail/detail
})
}
Taro.eventCenter.trigger执行了console.log('点击了')这个地方打印了没问题,页面还没跳转完成,竟然立即执行了另一个文件b.tsx中的--Taro.eventCenter.on; 等到页面跳转过去在执行Taro.eventCenter.on,当然得到一个undefined的结果,导致无法进行setItem(eventItem)
//b.tsx
useEffect(() => {
console.log(444)
Taro.eventCenter.on('abc', (eventItem) => {
Taro.eventCenter.off('abc')
console.log(123)
console.log(item)
console.log(eventItem)
setItem(eventItem)
})
}, [ ])
-
@jd_5509a55d2f3e0 获取页面参数是
this.$router.params
,你试试哈
-
@Taro-小助手-honly 收到!感谢。。。