解决路由传值被截断,数据不全的一些问题

有时候超过限制了,导致数据被截断

在这里发现 imgUrl的地址原本有22个之多 发现被截断,导致页面不显示

解决方法 在传递数据时,如果数据量较大,会导致 URL 长度过长,从而可能会影响传递的数据。为了避免这种情况,可以考虑使用 uni.setStorageSync() 方法将数据存储到本地缓存中,然后在下一个页面中通过 uni.getStorageSync() 方法获取数据。具体来说,在上一个页面中可以将需要传递的数据存储到本地缓存中:

uni.setStorageSync('textContent', that.textContent);
uni.setStorageSync('imgsURL', that.imgsURL);

最好的解决办法是使用状态管理工具(如Redux、MobX、Vuex等)来管理大量的数据,避免使用路由传值。如果必须使用路由传值,可以将数据存储在本地存储(如localStorage、sessionStorage等)或者使用URL参数传值。另外,也可以考虑对数据进行压缩或者分割传输的方式来减小传输的数据量。

即使使用 JSON.stringify() 方法,当数组太大时,依然可能无法传递。这是因为浏览器对于URL长度有限制,不同的浏览器限制长度不同,例如IE的限制是2083个字符,Chrome和Firefox的限制是8192个字符。一般来说,如果要传递大量数据,最好的方法是使用POST请求或者使用WebSocket等技术。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值