File tree Expand file tree Collapse file tree 1 file changed +12
-9
lines changed
packages/uni-h5/src/x/framework/setup Expand file tree Collapse file tree 1 file changed +12
-9
lines changed Original file line number Diff line number Diff line change @@ -304,15 +304,18 @@ export function initXPage(
304304) {
305305 initPageVm ( vm , page )
306306 // 获取 packages/uni-h5/src/framework/components/page/index.ts defineSystemComponent page currentInstance
307- Object . defineProperty ( vm , '$pageLayoutInstance' , {
308- get ( ) {
309- let res = vm . $ ?. parent
310- while ( res && res . type ?. name !== 'Page' ) {
311- res = res . parent
312- }
313- return res
314- } ,
315- } )
307+ if ( ! ( '$pageLayoutInstance' in vm ) ) {
308+ Object . defineProperty ( vm , '$pageLayoutInstance' , {
309+ get ( ) {
310+ // @ts -expect-error !('$pageLayoutInstance' in vm)导致vm推断为never,不可使用vm.hasOwnProperty
311+ let res = vm . $ ?. parent
312+ while ( res && res . type ?. name !== 'Page' ) {
313+ res = res . parent
314+ }
315+ return res
316+ } ,
317+ } )
318+ }
316319 vm . $basePage = vm . $page as Page . PageInstance [ '$page' ]
317320 const pageInstance = vm . $pageLayoutInstance !
318321 if ( ! isDialogPageInstance ( pageInstance ) ) {
You can’t perform that action at this time.
0 commit comments