uni-app uni-transition 组件更新后在ios端动画执行完毕后元素位置会往左上偏移
uni-app uni-transition 组件更新后在ios端动画执行完毕后元素位置会往左上偏移
操作步骤:
- uni-transition 组件更新后,在ios端动画执行完毕后,元素位置会往左上偏移。
预期结果:
- uni-transition 组件更新后,在ios端动画执行完毕后,元素位置正常。
实际结果:
- uni-transition 组件更新后,在ios端动画执行完毕后,元素位置会往左上偏移。
bug描述:
- uni-transition 组件更新后,在ios端动画执行完毕后,元素位置会往左上偏移。
| 项目信息 | 详细信息 |
|------------------|--------------|
| 产品分类 | uniapp/App |
| PC开发环境操作系统 | Windows |
| PC开发环境操作系统版本号 | win11 |
| HBuilderX类型 | 正式 |
| HBuilderX版本号 | 4.65 |
| 手机系统 | iOS |
| 手机系统版本号 | iOS 18 |
| 手机厂商 | 苹果 |
| 手机机型 | iphone13 |
| 页面类型 | nvue |
| vue版本 | vue3 |
| 打包方式 | 云端 |
| 项目创建方式 | HBuilderX |
更多关于uni-app uni-transition 组件更新后在ios端动画执行完毕后元素位置会往左上偏移的实战教程也可以访问 https://www.itying.com/category-93-b0.html
组件更新后是升级了 uni_modules 插件,还是内部状态更新了,HBuilderX 内置的 hello uniapp 有 extUI tab 页面可以复现你的问题吗
更多关于uni-app uni-transition 组件更新后在ios端动画执行完毕后元素位置会往左上偏移的实战教程也可以访问 https://www.itying.com/category-93-b0.html
我的问题,之前一直用class设置的样式,也没什么异常,插件更新后一设置class就会出问题,现在看文档发现nvue是不支持通过class设置样式的,只能绑定styles传递样式。 问题解决了,谢谢大佬!
不过大佬还有个问题,就是uni-popup组件内部也用了uni-transition组件,更新到新版本后也出现了我提到的闪到左上角的问题,我在hello uniapp项目里,把extUI 里的popup页面改为nvue后,问题也都复现了,麻烦大佬后续跟进下!
回复 独酷设计: 说一下 HBuilderX 版本、运行的平台,vue 的版本,把这个页面改成 Nvue 是吧
回复 DCloud_UNI_OttoJi: 1. Hbuilder X 4.65;华为 Mate 30、HarmonyOS 4.2.0;vue3版本;2. 是的,我把hello-uniapp_3.4.7/pages/extUI/popup/popup.vue 改成了popup.nvue,结果就出现了。3. 我注意到社区里有另一个相似的问题,链接是 https://ask.dcloud.net.cn/question/209067。4.谢谢大佬跟进!
这是一个已知的iOS平台下uni-transition组件的兼容性问题。建议采取以下解决方案:
- 临时解决方案:在动画结束回调中手动重置元素位置
<uni-transition [@change](/user/change)="handleAnimationEnd">
// ...
methods: {
handleAnimationEnd() {
this.$nextTick(() => {
// 手动重置元素位置
this.$refs.transitionEl.style.transform = 'translate(0, 0)'
})
}
}