diff --git a/src/containers/Proxies/components/Proxy/index.tsx b/src/containers/Proxies/components/Proxy/index.tsx index 9101376..57b1537 100644 --- a/src/containers/Proxies/components/Proxy/index.tsx +++ b/src/containers/Proxies/components/Proxy/index.tsx @@ -57,24 +57,20 @@ export class Proxy extends React.Component { EE.unsubscribe(Action.SPEED_NOTIFY, this.speedTest) } + getDelay = async (name: string) => { + if (isClashX()) { + const delay = await jsBridge.getProxyDelay(name) + return delay + } + + const { data: { delay } } = await getProxyDelay(name) + return delay + } + speedTest = async () => { const { config } = this.props - if (isClashX()) { - const delay = await jsBridge.getProxyDelay(config.name) - if (delay === 0) { - return this.setState({ hasError: true }) - } - return this.setState({ delay }) - } - - const [res, err] = await to(getProxyDelay(config.name)) - - if (err) { - return this.setState({ hasError: true }) - } - - const { data: { delay } } = res - this.setState({ delay }) + const [delay, err] = await to(this.getDelay(config.name)) + this.setState({ delay: err ? -1 : delay, hasError: !!err }) } render () { diff --git a/src/containers/Proxies/components/Proxy/style.scss b/src/containers/Proxies/components/Proxy/style.scss index 178e9d4..c95a7b6 100644 --- a/src/containers/Proxies/components/Proxy/style.scss +++ b/src/containers/Proxies/components/Proxy/style.scss @@ -25,7 +25,9 @@ color: $color-primary-darken; font-size: 10px; overflow: hidden; - word-break: break-all; + word-break: keep-all; + white-space: nowrap; + text-overflow: ellipsis; } .proxy-delay {