From daaed3e4ebe18c98e8dd874a834a494bae70bba9 Mon Sep 17 00:00:00 2001 From: fxy060608 Date: Mon, 29 Nov 2021 21:34:08 +0800 Subject: [PATCH] refactor(h5): setup page --- packages/uni-h5-vite/src/plugins/pagesJson.ts | 4 ++-- packages/uni-h5-vite/src/plugins/setup.ts | 20 +------------------ packages/uni-h5/src/framework/setup/index.ts | 1 - 3 files changed, 3 insertions(+), 22 deletions(-) diff --git a/packages/uni-h5-vite/src/plugins/pagesJson.ts b/packages/uni-h5-vite/src/plugins/pagesJson.ts index c654aab6a..70b45ab33 100644 --- a/packages/uni-h5-vite/src/plugins/pagesJson.ts +++ b/packages/uni-h5-vite/src/plugins/pagesJson.ts @@ -54,7 +54,7 @@ function generatePagesJsonCode( return ` import { defineAsyncComponent, resolveComponent, createVNode, withCtx, openBlock, createBlock } from 'vue' -import { PageComponent, AsyncLoadingComponent, AsyncErrorComponent, useI18n, setupWindow } from '@dcloudio/uni-h5' +import { PageComponent, AsyncLoadingComponent, AsyncErrorComponent, useI18n, setupWindow, setupPage } from '@dcloudio/uni-h5' import { appid, debug, networkTimeout, router, async, sdkConfigs, qqMapKey, googleMapKey, nvue, locale, fallbackLocale } from '${manifestJsonPath}' const locales = import.meta.globEager('./locale/*.json') ${importLayoutComponentsCode} @@ -181,7 +181,7 @@ function generatePageDefineCode(pageOptions: UniApp.PagesJsonPageOptions) { pagePathWithExtname = pageOptions.path + '.vue' } const pageIdent = normalizeIdentifier(pageOptions.path) - return `const ${pageIdent}Loader = ()=>import('./${pagePathWithExtname}') + return `const ${pageIdent}Loader = ()=>import('./${pagePathWithExtname}').then(com => setupPage(com.default || com)) const ${pageIdent} = defineAsyncComponent(extend({loader:${pageIdent}Loader},AsyncComponentOptions))` } diff --git a/packages/uni-h5-vite/src/plugins/setup.ts b/packages/uni-h5-vite/src/plugins/setup.ts index 85fcdde78..414b7aec8 100644 --- a/packages/uni-h5-vite/src/plugins/setup.ts +++ b/packages/uni-h5-vite/src/plugins/setup.ts @@ -1,12 +1,7 @@ import path from 'path' import debug from 'debug' import type { Plugin } from 'vite' -import { - EXTNAME_JS_RE, - normalizePath, - parseVueRequest, - isUniPageSfcFile, -} from '@dcloudio/uni-cli-shared' +import { normalizePath, parseVueRequest } from '@dcloudio/uni-cli-shared' const debugSetup = debug('vite:uni:setup') @@ -28,19 +23,6 @@ export function uniSetupPlugin(): Plugin { `;import { setupApp } from '@dcloudio/uni-h5';setupApp(_sfc_main);` ) } - if (isUniPageSfcFile(id)) { - debugSetup(filename) - // js,ts,jsx,tsx - const isJs = EXTNAME_JS_RE.test(filename) - if (isJs) { - code = code.replace(/export\s+default/, 'const _sfc_main =') - } - code += `;import { setupPage } from '@dcloudio/uni-h5';setupPage(_sfc_main);` - if (isJs) { - code += ';export default _sfc_main;' - } - return code - } }, } } diff --git a/packages/uni-h5/src/framework/setup/index.ts b/packages/uni-h5/src/framework/setup/index.ts index 0cb37109a..5bcc7964c 100644 --- a/packages/uni-h5/src/framework/setup/index.ts +++ b/packages/uni-h5/src/framework/setup/index.ts @@ -1,6 +1,5 @@ import { extend, invokeArrayFns, isPlainObject } from '@vue/shared' import { - nextTick, ComponentInternalInstance, ComponentPublicInstance, createBlock, -- GitLab