diff --git a/pages/config/config.vue b/pages/config/config.vue index e5091a0..013d7cd 100644 --- a/pages/config/config.vue +++ b/pages/config/config.vue @@ -192,26 +192,30 @@ const fetchStrategies = async () => { try { const response = await api.strategies.getStrategies(); if (response.code === 200) { - strategies.value = response.data.map(item => ({ - id: item.id, - name: item.name, - desc: item.description, - type: item.type, - parameters: item.config ? (() => { + strategies.value = response.data.map(item => { + let parameters = {}; + if (item.config) { try { let config = JSON.parse(item.config); // 如果解析后还是字符串,再解析一次(处理双层转义) if (typeof config === 'string') { config = JSON.parse(config); } - return config; + parameters = config; } catch (e) { console.error('解析策略配置失败:', e); - return {}; + parameters = {}; } - })(), - color: '#10B981' - })); + } + return { + id: item.id, + name: item.name, + desc: item.description, + type: item.type, + parameters: parameters, + color: '#10B981' + }; + }); } } catch (error) { console.error('获取策略列表失败:', error);