mirror of
https://github.com/d0zingcat/NotionNext.git
synced 2026-05-31 23:16:54 +00:00
修复配置读取无法获取%category%映射的bug
This commit is contained in:
@@ -94,6 +94,11 @@ export const siteConfig = (key, defaultVal = null, extendConfig = {}) => {
|
|||||||
return convertVal(val)
|
return convertVal(val)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const cleanJsonString = val => {
|
||||||
|
// 使用正则表达式去掉不必要的空格、换行符和制表符
|
||||||
|
return val.replace(/\s+/g, ' ').trim()
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 从环境变量和NotionConfig读取的配置都是string类型;
|
* 从环境变量和NotionConfig读取的配置都是string类型;
|
||||||
* 这里识别出配置的字符值若为否 数字、布尔、[]数组,{}对象,若是则转成对应类型
|
* 这里识别出配置的字符值若为否 数字、布尔、[]数组,{}对象,若是则转成对应类型
|
||||||
@@ -128,13 +133,16 @@ export const convertVal = val => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 配置值前可能有污染的空格
|
// 配置值前可能有污染的空格
|
||||||
if (val.indexOf('[') < 0 && val.indexOf('{') < 0) {
|
// 如果字符串中没有 '[' 或 '{',则直接返回
|
||||||
|
if (!val.trim().startsWith('{') && !val.trim().startsWith('[')) {
|
||||||
return val
|
return val
|
||||||
}
|
}
|
||||||
|
|
||||||
// 转换 [] , {} 这类字符串为对象
|
// 转换 [] , {} 这类字符串为对象
|
||||||
try {
|
try {
|
||||||
|
val = cleanJsonString(val)
|
||||||
const parsedJson = JSON.parse(val)
|
const parsedJson = JSON.parse(val)
|
||||||
|
// 检查解析后的结果是否为对象
|
||||||
if (parsedJson !== null) {
|
if (parsedJson !== null) {
|
||||||
return parsedJson
|
return parsedJson
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user