From dea161c59a08987aaf01401924ef1666487f4a5b Mon Sep 17 00:00:00 2001 From: fxy060608 Date: Wed, 8 Dec 2021 15:08:57 +0800 Subject: [PATCH] chore: print startup duration --- packages/uni-cli-shared/src/messages/index.ts | 2 +- packages/uni-mp-vue/dist/vue.runtime.esm.js | 6 ++++-- packages/vite-plugin-uni/src/cli/action.ts | 14 +++++++------- packages/vite-plugin-uni/src/cli/utils.ts | 9 +++++++-- 4 files changed, 19 insertions(+), 12 deletions(-) diff --git a/packages/uni-cli-shared/src/messages/index.ts b/packages/uni-cli-shared/src/messages/index.ts index b2d636998..b4c57e5b1 100644 --- a/packages/uni-cli-shared/src/messages/index.ts +++ b/packages/uni-cli-shared/src/messages/index.ts @@ -22,4 +22,4 @@ export const M = { 'mp.component.args[1]': '{0}需要两个参数', 'mp.360.unsupported': 'vue3暂不支持360小程序', 'file.notfound': '{file} 文件不存在', -} +} as const diff --git a/packages/uni-mp-vue/dist/vue.runtime.esm.js b/packages/uni-mp-vue/dist/vue.runtime.esm.js index b23fdfe5d..b173166a0 100644 --- a/packages/uni-mp-vue/dist/vue.runtime.esm.js +++ b/packages/uni-mp-vue/dist/vue.runtime.esm.js @@ -5246,11 +5246,13 @@ function vFor(source, renderItem) { function renderSlot(name, props = {}, key) { const instance = getCurrentInstance(); - const vueIds = instance.attrs.uI; + const { parent, isMounted, ctx: { $scope }, } = instance; + // mp-alipay 为 props + const vueIds = ($scope.properties || $scope.props).uI; if (!vueIds) { return; } - if (!instance.parent && !instance.isMounted) { + if (!parent && !isMounted) { // 头条小程序首次 render 时,还没有 parent onMounted(() => { renderSlot(name, props, key); diff --git a/packages/vite-plugin-uni/src/cli/action.ts b/packages/vite-plugin-uni/src/cli/action.ts index 1282d2268..f95d592da 100644 --- a/packages/vite-plugin-uni/src/cli/action.ts +++ b/packages/vite-plugin-uni/src/cli/action.ts @@ -1,11 +1,11 @@ import { extend } from '@vue/shared' import { RollupWatcher } from 'rollup' -import type { BuildOptions, ServerOptions } from 'vite' +import { BuildOptions, createLogger, ServerOptions } from 'vite' import { M } from '@dcloudio/uni-cli-shared' import { CliOptions } from '.' import { build, buildSSR } from './build' import { createServer, createSSRServer } from './server' -import { initEnv } from './utils' +import { initEnv, printStartupDuration } from './utils' import { initEasycom } from '../utils/easycom' export async function runDev(options: CliOptions & ServerOptions) { @@ -30,13 +30,13 @@ export async function runDev(options: CliOptions & ServerOptions) { console.log(M['dev.watching.start']) } else if (event.code === 'BUNDLE_END') { event.result.close() - if (options.platform !== 'app') { - // 非App平台无需处理增量同步 - return console.log(M['dev.watching.end']) - } if (isFirstEnd) { // 首次全量同步 - return (isFirstEnd = false), console.log(M['dev.watching.end']) + return ( + (isFirstEnd = false), + console.log(M['dev.watching.end']), + printStartupDuration(createLogger(options.logLevel), false) + ) } if (process.env.UNI_APP_CHANGED_FILES) { return console.log( diff --git a/packages/vite-plugin-uni/src/cli/utils.ts b/packages/vite-plugin-uni/src/cli/utils.ts index 5bdfa757f..5b3e3a4b8 100644 --- a/packages/vite-plugin-uni/src/cli/utils.ts +++ b/packages/vite-plugin-uni/src/cli/utils.ts @@ -191,13 +191,18 @@ export function cleanOptions(options: CliOptions) { return ret } -export function printStartupDuration(logger: Logger) { +export function printStartupDuration( + logger: Logger, + whitespace: boolean = true +) { // @ts-ignore if (global.__vite_start_time) { // @ts-ignore const startupDuration = performance.now() - global.__vite_start_time logger.info( - `\n ${chalk.cyan(`ready in ${Math.ceil(startupDuration)}ms.`)}\n` + `${whitespace ? `\n ` : ''}${chalk.cyan( + `ready in ${Math.ceil(startupDuration)}ms.` + )}\n` ) } } -- GitLab