uniapp vue3 打包h5后无法正常正常使用uni对象中的方法
今天uniapp项目遇到一个小问题,记录下,就是打包h5后放到服务器跑,一直报错:uni.navigator is not defined
以下是我的代码:
to(url, type = 'navigateTo') { uni[type]({ url }) }
以上是我封装的跳转路由方法,在开发环境跑没问题,打包成h5后,就会报错uni[t] is not defined
原因是在vue3中,uni对象中的方法,打包后不会被存在uni对象中,也就是打包后uni对象为空,所以我们不能使用 uni对象 动态去使用它的属性
解决方案:
to(url, type = 'navigateTo') { if (type === 'navigateTo') { uni.navigateTo({ url }) } else if (type === 'redirectTo') { uni.redirectTo({ url }) } else if (type === 'reLaunch') { uni.reLaunch({ url }) } else if (type === 'switchTab') { uni.switchTab({ url }) } }
小小记录下