diff --git a/src/components/blogs/header/NavigateMenu.vue b/src/components/blogs/header/NavigateMenu.vue index 30ee10c..7e2f0a7 100644 --- a/src/components/blogs/header/NavigateMenu.vue +++ b/src/components/blogs/header/NavigateMenu.vue @@ -77,6 +77,7 @@ const items = ref([ ]); const jumpMenu = ({ key }: { key: string }) => { router.push(`/${key}`) + store.getTitle="" store.setTitles([]); }; watch( diff --git a/src/components/blogs/leftsite/CataloGue.vue b/src/components/blogs/leftsite/CataloGue.vue index 46e92ca..321a8c5 100644 --- a/src/components/blogs/leftsite/CataloGue.vue +++ b/src/components/blogs/leftsite/CataloGue.vue @@ -1,42 +1,54 @@ - - - - - \ No newline at end of file +}; +const handleMouseOver = (event: any) => { + const target = event.currentTarget as HTMLElement; + target.style.backgroundColor = '#f0f0f0'; + target.style.color = '#bd5b5b'; +} + +const handleMouseLeave = (event: any) => { + const target = event.currentTarget as HTMLElement; + target.style.backgroundColor = '' +} + + + \ No newline at end of file diff --git a/src/stores/index.ts b/src/stores/index.ts index cfdbf46..1b20235 100644 --- a/src/stores/index.ts +++ b/src/stores/index.ts @@ -24,8 +24,8 @@ export const blogStore = defineStore("blog", () => { }) export const useContentStore = defineStore('content', () => { const content = ref({ text: "" }); + const getTitle=ref("") const titles = ref<{ title: string; lineIndex: string; indent: number }[]>([]); - function setContent(newContent: string) { content.value.text = newContent; } @@ -33,8 +33,8 @@ export const useContentStore = defineStore('content', () => { function setTitles(newTitles: { title: string; lineIndex: string; indent: number }[]) { titles.value = newTitles; } - - return { content,titles,setContent,setTitles }; + + return { content,titles,setContent,setTitles,getTitle}; }); export const diaryStore = defineStore("diary", () => { diff --git a/src/views/blog/ContentDetail.vue b/src/views/blog/ContentDetail.vue index fdaa1d1..dea0b4f 100644 --- a/src/views/blog/ContentDetail.vue +++ b/src/views/blog/ContentDetail.vue @@ -16,7 +16,6 @@ import { useContentStore } from '@/stores'; const route = useRoute(); const store = useContentStore(); - const props = defineProps<{ apiUrl: string; contentField: string; @@ -51,7 +50,7 @@ const processHeadings = async () => { } const hTags = Array.from(new Set(titlesArray.map((title: any) => title.tagName))).sort(); - + store.setTitles(titlesArray.map((el: any) => ({ title: el.innerText, lineIndex: el.getAttribute('data-v-md-line') || '', diff --git a/src/views/blog/blogcontent/BlogListView.vue b/src/views/blog/blogcontent/BlogListView.vue index cc3c3fe..942e5f8 100644 --- a/src/views/blog/blogcontent/BlogListView.vue +++ b/src/views/blog/blogcontent/BlogListView.vue @@ -64,10 +64,12 @@