Files
hcframe-doc/theme-vdoing/enhanceApp.js
2021-02-03 17:01:33 +08:00

48 lines
1.5 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// 解决代码选项卡无法加载的问题
import Vue from 'vue'
import CodeBlock from "@theme/global-components/CodeBlock.vue"
import CodeGroup from "@theme/global-components/CodeGroup.vue"
// Register the Vue global component
Vue.component(CodeBlock)
Vue.component(CodeGroup)
// 注:此文件在浏览器端运行
import postsMixin from '@theme/mixins/posts'
export default ({
Vue, // VuePress 正在使用的 Vue 构造函数
options, // 附加到根实例的一些选项
router, // 当前应用的路由实例
siteData // 站点元数据
}) => {
// 修复ISO8601时间格式为普通时间格式以及添加作者信息
siteData.pages.map(item => {
const { frontmatter: { date, author } } = item
if (typeof date === 'string' && date.charAt(date.length - 1) === 'Z') {
item.frontmatter.date = repairUTCDate(date)
}
if (author) {
item.author = author
} else {
if (siteData.themeConfig.author) {
item.author = siteData.themeConfig.author
}
}
})
// 将对文章数据的处理结果混入Vue实例
Vue.mixin(postsMixin)
}
// 修复ISO8601时间格式为普通时间格式
function repairUTCDate (date) {
if (!(date instanceof Date)) {
date = new Date(date)
}
return `${date.getUTCFullYear()}-${zero(date.getUTCMonth() + 1)}-${zero(date.getUTCDate())} ${zero(date.getUTCHours())}:${zero(date.getUTCMinutes())}:${zero(date.getUTCSeconds())}`;
}
// 小于10补0
function zero (d) {
return d.toString().padStart(2, '0')
}