})
}
-function createPassThroughWithSuspense(key: string) {
+function createPassThroughWithSuspense(key: string, isAsync = false) {
return defineComponent({
name: `PassThroughViewWithSuspense:${key}`,
setup() {
logs.value.push(`PassThrough:${key} setup`)
+ const route = useRoute()
+ const shouldFail = !!route.query.fail
+
+ return isAsync
+ ? delay(100).then(() =>
+ shouldFail ? Promise.reject(new Error('failed')) : {}
+ )
+ : {}
},
template: `
},
{
path: '/n/sus/one',
- component: createPassThroughWithSuspense('sus-one'),
+ component: createPassThroughWithSuspense('sus-one', false),
children: [
{
path: 'child',
},
{
path: '/n/sus/two',
- component: createPassThroughWithSuspense('sus-two'),
+ component: createPassThroughWithSuspense('sus-two', true),
children: [
{
path: 'child',