fix:DNS override server support is left blank by default (#3997)

* fix:DNS server support being left blank by default

* update logs
This commit is contained in:
Dyna
2025-07-06 11:01:05 +08:00
committed by GitHub
Unverified
parent ac3afe4dee
commit d36c3a83a9
2 changed files with 6 additions and 16 deletions

View File

@@ -10,6 +10,7 @@
- 修复导入订阅时非 http 协议链接被错误尝试导入
- 修复切换节点后页面长时间 loading 及缓存过期导致的数据不同步问题
- 修复将快捷键名称更名为 `Clash Verge`之后无法删除图标和无法删除注册表
- 修复`DNS`覆写服务器支持默认留空
### ✨ 新增功能

View File

@@ -442,7 +442,7 @@ export const DnsViewer = forwardRef<DialogRef>((props, ref) => {
// 解析列表字符串为数组
const parseList = (str: string): string[] => {
if (!str) return [];
if (!str?.trim()) return [];
return str
.split(",")
.map((item) => item.trim())
@@ -472,28 +472,17 @@ export const DnsViewer = forwardRef<DialogRef>((props, ref) => {
ipcidr: parseList(values.fallbackIpcidr),
domain: parseList(values.fallbackDomain),
},
};
// 只在有值时添加其他可选字段
if (values.fallback) {
dnsConfig["fallback"] = parseList(values.fallback);
}
fallback: parseList(values.fallback),
"proxy-server-nameserver": parseList(values.proxyServerNameserver),
"direct-nameserver": parseList(values.directNameserver),
};
const policy = parseNameserverPolicy(values.nameserverPolicy);
if (Object.keys(policy).length > 0) {
dnsConfig["nameserver-policy"] = policy;
}
if (values.proxyServerNameserver) {
dnsConfig["proxy-server-nameserver"] = parseList(
values.proxyServerNameserver,
);
}
if (values.directNameserver) {
dnsConfig["direct-nameserver"] = parseList(values.directNameserver);
}
return dnsConfig;
};