diff --git a/packages/core/src/context.ts b/packages/core/src/context.ts
index cc17d00..716913a 100644
--- a/packages/core/src/context.ts
+++ b/packages/core/src/context.ts
@@ -208,7 +208,11 @@ export class PageContext {
? mergePageMetaDataArray(generatedPageMetaData.concat(customPageMetaData))
: generatedPageMetaData
- return type === 'main' ? this.setHomePage(result) : result
+ const parseMeta = result.filter((page, index, self) =>
+ self.findLastIndex(item => page.path === item.path) === index,
+ )
+
+ return type === 'main' ? this.setHomePage(parseMeta) : parseMeta
}
/**
@@ -241,6 +245,7 @@ export class PageContext {
async mergePageMetaData() {
const pageMetaData = await this.parsePages(this.pagesPath, 'main', this.pagesGlobConfig?.pages)
+
this.pageMetaData = pageMetaData
debug.pages(this.pageMetaData)
}
diff --git a/packages/playground/src/pages-sub-pages/sub-main/pages/about/index.nvue b/packages/playground/src/pages-sub-pages/sub-main/pages/about/index.nvue
new file mode 100644
index 0000000..cc7ec29
--- /dev/null
+++ b/packages/playground/src/pages-sub-pages/sub-main/pages/about/index.nvue
@@ -0,0 +1,3 @@
+
+ Hello World
+
\ No newline at end of file
diff --git a/packages/playground/src/pages/index.nvue b/packages/playground/src/pages/index.nvue
new file mode 100644
index 0000000..cc7ec29
--- /dev/null
+++ b/packages/playground/src/pages/index.nvue
@@ -0,0 +1,3 @@
+
+ Hello World
+
\ No newline at end of file
diff --git a/test/files.spec.ts b/test/files.spec.ts
index 0549498..6066be5 100644
--- a/test/files.spec.ts
+++ b/test/files.spec.ts
@@ -14,6 +14,7 @@ describe('get files', () => {
"blog/index.vue",
"blog/post.vue",
"i18n.vue",
+ "index.nvue",
"index.vue",
"test-json.vue",
"test-yaml.vue",
diff --git a/test/generate.spec.ts b/test/generate.spec.ts
index ebb6709..7fd103f 100644
--- a/test/generate.spec.ts
+++ b/test/generate.spec.ts
@@ -123,11 +123,11 @@ describe('generate routes', () => {
{
"path": "../packages/playground/src/pages/index",
"type": "page",
+ "style": {},
"middlewares": [
"auth",
"test"
- ],
- "style": {}
+ ]
},
{
"path": "../packages/playground/src/pages/test-json",