From d307053e4e73614675654f88d92365d507a12a01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E5=80=89=E5=84=AA=E6=82=9F?= Date: Sun, 6 Sep 2020 11:44:37 +0900 Subject: [PATCH] feat: make navBarLinks component --- src/client/theme-default/components/NavBar.ts | 16 +++--------- .../theme-default/components/NavBar.vue | 21 +-------------- .../theme-default/components/NavBarLinks.ts | 22 ++++++++++++++++ .../theme-default/components/NavBarLinks.vue | 26 +++++++++++++++++++ 4 files changed, 52 insertions(+), 33 deletions(-) create mode 100644 src/client/theme-default/components/NavBarLinks.ts create mode 100644 src/client/theme-default/components/NavBarLinks.vue diff --git a/src/client/theme-default/components/NavBar.ts b/src/client/theme-default/components/NavBar.ts index 3e706e69..79dd8782 100644 --- a/src/client/theme-default/components/NavBar.ts +++ b/src/client/theme-default/components/NavBar.ts @@ -1,24 +1,14 @@ -import { computed } from 'vue' import { withBase } from '../utils' -import { useSiteDataByRoute } from 'vitepress' -import NavBarLink from './NavBarLink.vue' -import NavDropdownLink from './NavDropdownLink.vue' +import NavBarLinks from './NavBarLinks.vue' export default { components: { - NavBarLink, - NavDropdownLink + NavBarLinks }, setup() { return { - withBase, - navData: - process.env.NODE_ENV === 'production' - ? // navbar items do not change in production - useSiteDataByRoute().value.themeConfig.nav - : // use computed in dev for hot reload - computed(() => useSiteDataByRoute().value.themeConfig.nav) + withBase } } } diff --git a/src/client/theme-default/components/NavBar.vue b/src/client/theme-default/components/NavBar.vue index 50f2cffc..99cd3f9a 100644 --- a/src/client/theme-default/components/NavBar.vue +++ b/src/client/theme-default/components/NavBar.vue @@ -12,12 +12,7 @@ /> {{ $site.title }} - + @@ -34,18 +29,4 @@ height: 1.3rem; vertical-align: bottom; } - -.nav-links { - display: flex; - align-items: center; - height: 35px; - list-style-type: none; - transform: translateY(1px); -} - -@media screen and (max-width: 719px) { - .nav-links { - display: none; - } -} diff --git a/src/client/theme-default/components/NavBarLinks.ts b/src/client/theme-default/components/NavBarLinks.ts new file mode 100644 index 00000000..e41aa966 --- /dev/null +++ b/src/client/theme-default/components/NavBarLinks.ts @@ -0,0 +1,22 @@ +import { computed } from 'vue' +import { useSiteDataByRoute } from 'vitepress' +import NavBarLink from './NavBarLink.vue' +import NavDropdownLink from './NavDropdownLink.vue' + +export default { + components: { + NavBarLink, + NavDropdownLink + }, + + setup() { + return { + navData: + process.env.NODE_ENV === 'production' + ? // navbar items do not change in production + useSiteDataByRoute().value.themeConfig.nav + : // use computed in dev for hot reload + computed(() => useSiteDataByRoute().value.themeConfig.nav) + } + } +} diff --git a/src/client/theme-default/components/NavBarLinks.vue b/src/client/theme-default/components/NavBarLinks.vue new file mode 100644 index 00000000..7bd1f228 --- /dev/null +++ b/src/client/theme-default/components/NavBarLinks.vue @@ -0,0 +1,26 @@ + + + + +