mirror of
https://github.com/babalae/bettergi-scripts-list.git
synced 2026-05-20 22:25:50 +08:00
feat(auto-tools): 添加指定层级加载功能
- 在配置中新增 the_layer 复选框选项用于控制是否只加载指定层级 - 优化路径查找逻辑,通过预建 levelName 映射提升性能 - 修改过滤条件以支持层级加载功能 - 在两个配置文件中同步添加 the_layer 设置项
This commit is contained in:
@@ -50,6 +50,12 @@
|
|||||||
"label": "加载路径层级(不可小于1)<配置模式 刷新||加载 生效>",
|
"label": "加载路径层级(不可小于1)<配置模式 刷新||加载 生效>",
|
||||||
"default": "2"
|
"default": "2"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "the_layer",
|
||||||
|
"type": "checkbox",
|
||||||
|
"label": "只加载指定层级<配置模式 加载 生效>",
|
||||||
|
"default": false
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "order_rules",
|
"name": "order_rules",
|
||||||
"type": "input-text",
|
"type": "input-text",
|
||||||
|
|||||||
@@ -518,21 +518,31 @@ async function loadUidSettingsMap(uidSettingsMap) {
|
|||||||
|
|
||||||
// const key = keys[keys.size - 1]
|
// const key = keys[keys.size - 1]
|
||||||
// PATH_JSON_LIST.filter(item => item.level > 0)
|
// PATH_JSON_LIST.filter(item => item.level > 0)
|
||||||
|
// 预先建立 levelName 到路径信息的映射
|
||||||
|
const levelNameMap = new Map();
|
||||||
|
PATH_JSON_LIST.forEach(item => {
|
||||||
|
if (item.levelName) {
|
||||||
|
levelNameMap.set(item.levelName, item);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
//中间一段路径名称
|
//中间一段路径名称
|
||||||
const dir_key = keys.join("\\")
|
const dir_key = keys.join("\\")
|
||||||
filterSettings = filterUidSettings.filter(item => {
|
filterSettings = filterUidSettings.filter(item => {
|
||||||
const settings_level = PATH_JSON_LIST.filter(list_item => list_item.levelName === item.name).find();
|
// const settings_level = PATH_JSON_LIST.filter(list_item => list_item.levelName === item.name).find();
|
||||||
|
const settings_level = levelNameMap.get(item.name);
|
||||||
if (settings_level) {
|
if (settings_level) {
|
||||||
//只加载指定目录
|
//只加载指定目录
|
||||||
return (settings_level.path.includes(dir_key))
|
return (settings_level.path.includes(dir_key))
|
||||||
}
|
}
|
||||||
|
return false
|
||||||
})
|
})
|
||||||
const theLayer = settings.the_layer || false
|
const theLayer = settings.the_layer || false
|
||||||
const levelSettings = filterSettings.filter(item => {
|
const levelSettings = filterSettings.filter(item => {
|
||||||
const level_all = item.name.replaceAll(levelName, "");
|
const level_all = item.name.replaceAll(levelName, "");
|
||||||
// 获取级别
|
// 获取级别
|
||||||
const level = level_all.split("_").filter(item => item?.trim() !== "").map(parseInt)[0]
|
const level = level_all.split("_").filter(item => item?.trim() !== "").map(parseInt)[0]
|
||||||
if (theLayer && loadingLevel === level + 1) {
|
if (theLayer) {
|
||||||
//只加载指定级别的设置
|
//只加载指定级别的设置
|
||||||
return (loadingLevel === level + 1)
|
return (loadingLevel === level + 1)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -50,6 +50,12 @@
|
|||||||
"label": "加载路径层级(不可小于1)<配置模式 刷新||加载 生效>",
|
"label": "加载路径层级(不可小于1)<配置模式 刷新||加载 生效>",
|
||||||
"default": "2"
|
"default": "2"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "the_layer",
|
||||||
|
"type": "checkbox",
|
||||||
|
"label": "只加载指定层级<配置模式 加载 生效>",
|
||||||
|
"default": false
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "order_rules",
|
"name": "order_rules",
|
||||||
"type": "input-text",
|
"type": "input-text",
|
||||||
|
|||||||
Reference in New Issue
Block a user