Skip to content

Commit e7e61fe

Browse files
fix: try to only parse meta once during ssr build (#54)
1 parent 0d7d1df commit e7e61fe

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

src/parser.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ export function useComponentMetaParser (
198198
const startTime = performance.now()
199199
await Promise.all(Object.values(components).map(fetchComponent))
200200
const endTime = performance.now()
201-
if (!debug) { logger.success(`Components metas parsed in ${(endTime - startTime).toFixed(2)}ms`) }
201+
if (!debug || debug === 2) { logger.success(`Components metas parsed in ${(endTime - startTime).toFixed(2)}ms`) }
202202
}
203203

204204
return {

src/unplugin.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,23 @@ type ComponentMetaUnpluginOptions = { parser?: ComponentMetaParser } & ModuleOpt
77
export const metaPlugin = createUnplugin<ComponentMetaUnpluginOptions>(
88
({ parser, ...options }) => {
99
const instance = (parser || useComponentMetaParser(options)) as ComponentMetaParser
10+
let _configResolved: any
1011

1112
return {
1213
name: 'vite-plugin-nuxt-component-meta',
1314
enforce: 'post',
1415
async buildStart () {
16+
// avoid parsing meta twice in SSR
17+
if (_configResolved?.build.ssr) {
18+
return
19+
}
1520
await instance.fetchComponents()
1621
await instance.updateOutput()
1722
},
1823
vite: {
24+
configResolved (config) {
25+
_configResolved = config
26+
},
1927
async handleHotUpdate ({ file }) {
2028
if (Object.entries(instance.components).some(([, comp]: any) => comp.fullPath === file)) {
2129
await instance.fetchComponent(file)

0 commit comments

Comments
 (0)