From 73f3a0266413ab7a1e4c7f572f564e0f77f5d8d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=AD=E7=BB=B4=E5=98=89?= Date: Thu, 11 Nov 2021 15:01:35 +0800 Subject: [PATCH] fix --- src/App.vue | 4 ++-- src/assets/js/utils.js | 2 +- src/components/content/components/toc-doc.vue | 6 ++++-- src/components/content/mixins/render-mixins.js | 2 +- src/main.js | 4 ---- 5 files changed, 8 insertions(+), 10 deletions(-) diff --git a/src/App.vue b/src/App.vue index 7707933..7def2c3 100644 --- a/src/App.vue +++ b/src/App.vue @@ -547,9 +547,9 @@ export default { }, addTocClickToBody() { document.querySelector("body").addEventListener("click", function(e) { - if (!e.target?.className.includes("md_toc_item")) return; + if (!e.target.className.includes("md_toc_item")) return; const targetEl = document.getElementById( - e.target?.getAttribute("href") + e.target.getAttribute("href") ); if (!targetEl) return; targetEl.scrollIntoView({ diff --git a/src/assets/js/utils.js b/src/assets/js/utils.js index 6386d1f..7cea4cc 100644 --- a/src/assets/js/utils.js +++ b/src/assets/js/utils.js @@ -184,7 +184,7 @@ export function isNotFalse(val) { } export function pick(list, ...arg) { - if (!list.length || !arg?.length) return; + if (!list.length || !(arg && arg.length)) return; return list.filter(item => { return arg.find(key => key === item.name); }); diff --git a/src/components/content/components/toc-doc.vue b/src/components/content/components/toc-doc.vue index 84effb9..fd3cd61 100644 --- a/src/components/content/components/toc-doc.vue +++ b/src/components/content/components/toc-doc.vue @@ -59,7 +59,7 @@ export default { }, computed: { topList() { - return this.dirTags.map(item => Math.abs(item?.top)); + return this.dirTags.map(item => Math.abs(item && item.top)); } }, created() { @@ -92,7 +92,9 @@ export default { // ).scrollTop = targetOffsetTop; }, dirItemActive(item) { - const itemScrollTop = document.getElementById(item.id)?.offsetTop; + const targetEl = document.getElementById(item.id); + if (!targetEl) return; + const itemScrollTop = targetEl.offsetTop; const top = this.scrollBarTop - itemScrollTop; this.$set(item, "top", top); return Math.abs(top) === Math.min(...this.topList); diff --git a/src/components/content/mixins/render-mixins.js b/src/components/content/mixins/render-mixins.js index 7b46235..bdcc64a 100644 --- a/src/components/content/mixins/render-mixins.js +++ b/src/components/content/mixins/render-mixins.js @@ -142,7 +142,7 @@ export default { return "" + text + "\n"; }, link(href, title, text) { - if (text?.toLowerCase() === "toc") { + if (text && text.toLowerCase() === "toc") { return `

${href}

`; diff --git a/src/main.js b/src/main.js index 1701001..f1e7350 100644 --- a/src/main.js +++ b/src/main.js @@ -4,10 +4,6 @@ import Vtip from "vtip"; import "vtip/lib/index.min.css"; import { initStyle, setzIndex, isNotEmpty } from "@/assets/js/utils"; import "@/assets/style/global.less"; -// import "@/assets/jupyter-render/dist/index.js"; -// import "@/assets/jupyter-render/dist/assets/index.css"; - - Vue.use(Vtip.directive); function initMdEditor(obj) { -- GitLab