diff --git a/src/App.vue b/src/App.vue index 77079331ed9e19e5d42dd55a512e4ec56860cc68..7def2c3bfb74ea038e4b788ea27afb2f9714e444 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 6386d1fbb4c36ae65dbaf64b58b05213d87ed21b..7cea4cca5fb89e986df463847b784e1ab6819fb0 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 84effb9f9aeb33ac7f8a7a18ca6659bf8dc4bff7..fd3cd6175c30459babab039ee48a26e01e4615ae 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 7b462350f187ef96c6bc86ec8e7ade07989c7d2e..bdcc64a4d86975b41de531f0a64d236ce0fb2df0 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 1701001d1b4eb19030023d341487a0f6ac7afcb0..f1e7350c2641fedc9c05105854f6dcc13661ec3a 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) {