【支付宝小程序 】setup 和 onBeforeUnmount 生命钩子执行时机错误 - uni3vue3
- Dominant language
- JavaScript
- Stars
- 41.6k
- Forks
- 3.7k
- Avg merge
- 7h 6m
- Merged PRs (30d)
- 6
Description
**问题描述**
两个组件互相切换,setup 和 onBeforeUnmount 生命周期钩子执行顺序与浏览器表现不一致。
**复现步骤**
两个组件互相切换,显示A时隐藏B,显示B时隐藏A,分别在两个组件的 setup 和 onBeforeUnmount 钩子中打印日志。
伪代码:
容器组件,控制AB组件切换。
```html
```
组件A
```html
import { onBeforeMount, onBeforeUnmount } from 'vue';
console.log('A: setup');
onBeforeMount(() => {
console.log('A: onBeforeMount');
});
onBeforeUnmount(() => {
console.log('A: onBeforeUnmount');
});
```
组件B
```html
import { onBeforeMount, onBeforeUnmount } from 'vue';
console.log('B: setup');
onBeforeMount(() => {
console.log('B: onBeforeMount');
});
onBeforeUnmount(() => {
console.log('B: onBeforeUnmount');
});
```
**预期结果**
A切B时,预期效果:
1、A onBeforeUnmount
2、B setup
3、B onBeforeMount
**实际结果**
A切B时,实际效果:
1、B setup
2、A onBeforeUnmount
3、B onBeforeMount
**系统信息:**
- 发行平台: 支付宝小程序
- 操作系统:Android12
- uni-app版本:3.0.0-alpha-3050220220718001
- 设备信息:Redmi K40(在小程序开发者工具中的模拟器上表现也一致)
**补充信息**
同一个工程构建后的微信小程序版本测试正常。
Contributor guide
Assessment
This issue has not been assessed yet.