Merge pull request #3000 from tangly1024/release/4.7.10

Release/4.7.10
This commit is contained in:
tangly1024
2024-11-20 10:11:44 +08:00
committed by GitHub
44 changed files with 1484 additions and 265 deletions

View File

@@ -36,6 +36,7 @@ export const siteConfig = (key, defaultVal = null, extendConfig = {}) => {
case 'POST_URL_PREFIX_MAPPING_CATEGORY':
case 'IS_TAG_COLOR_DISTINGUISHED':
case 'TAG_SORT_BY_COUNT':
case 'THEME':
case 'LINK':
return convertVal(
getValue(extendConfig[key], getValue(defaultVal, BLOG[key]))

View File

@@ -1,22 +1,31 @@
import BLOG from '@/blog.config'
/**
* 格式化日期
* @param date
* @param local
* @returns {string}
*/
export default function formatDate (date, local) {
export default function formatDate(date, local = BLOG.LANG) {
if (!date || !local) return date || ''
const d = new Date(date)
const options = { year: 'numeric', month: 'short', day: 'numeric' }
const res = d.toLocaleDateString(local, options)
// 如果格式是中文日期,则转为横杆
const format = local.slice(0, 2).toLowerCase() === 'zh'
? res.replace('年', '-').replace('月', '-').replace('日', '')
: res
const format =
local.slice(0, 2).toLowerCase() === 'zh'
? res.replace('年', '-').replace('月', '-').replace('日', '')
: res
return format
}
export function formatDateFmt (timestamp, fmt) {
/**
* 时间戳格式化
* @param {*} timestamp
* @param {*} fmt
* @returns
*/
export function formatDateFmt(timestamp, fmt) {
const date = new Date(timestamp)
const o = {
'M+': date.getMonth() + 1, // 月份
@@ -28,11 +37,17 @@ export function formatDateFmt (timestamp, fmt) {
S: date.getMilliseconds() // 毫秒
}
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length))
fmt = fmt.replace(
RegExp.$1,
(date.getFullYear() + '').substr(4 - RegExp.$1.length)
)
}
for (const k in o) {
if (new RegExp('(' + k + ')').test(fmt)) {
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)))
fmt = fmt.replace(
RegExp.$1,
RegExp.$1.length === 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length)
)
}
}
return fmt.trim()