diff --git a/web/src/pages/Route/List.tsx b/web/src/pages/Route/List.tsx index 1f28653354..af2c3b3e3e 100644 --- a/web/src/pages/Route/List.tsx +++ b/web/src/pages/Route/List.tsx @@ -35,24 +35,28 @@ const Page: React.FC = () => { }, { title: formatMessage({ id: 'page.route.domainName' }), - dataIndex: 'hosts', hideInSearch: true, - render: (_, record) => - (record.hosts || []).map((host) => ( - - {host} + render: (_, record) => { + const list = record.hosts || (record.host && [record.host]) || []; + + return list.map((item) => ( + + {item} - )), + )); + }, }, { title: formatMessage({ id: 'page.route.path' }), - dataIndex: 'uri', - render: (_, record) => - record.uris?.map((uri) => ( - - {uri} + render: (_, record) => { + const list = record.uris || (record.uri && [record.uri]) || []; + + return list.map((item) => ( + + {item} - )), + )); + }, }, { title: formatMessage({ id: 'component.global.description' }), diff --git a/web/src/pages/Route/transform.ts b/web/src/pages/Route/transform.ts index 1894ed353a..69ac7d9b0c 100644 --- a/web/src/pages/Route/transform.ts +++ b/web/src/pages/Route/transform.ts @@ -130,13 +130,13 @@ export const transformUpstreamNodes = ( }; export const transformRouteData = (data: RouteModule.Body) => { - const { name, desc, methods, uris, hosts, vars, status, upstream, upstream_id } = data; + const { name, desc, methods, uris, uri, hosts, host, vars, status, upstream, upstream_id } = data; const form1Data: Partial = { name, desc, status, - hosts: (hosts || []).filter(Boolean).length === 0 ? [''] : hosts, - uris, + hosts: hosts || (host && [host]) || [''], + uris: uris || (uri && [uri]) || [], methods, }; diff --git a/web/src/pages/Route/typing.d.ts b/web/src/pages/Route/typing.d.ts index 03d6df1027..3dc2864888 100644 --- a/web/src/pages/Route/typing.d.ts +++ b/web/src/pages/Route/typing.d.ts @@ -75,7 +75,9 @@ declare namespace RouteModule { desc: string; priority?: number; methods: HttpMethod[]; + uri?: string; uris: string[]; + host?: string; hosts: string[]; vars: [string, Operator, string][]; upstream: { @@ -262,6 +264,8 @@ declare namespace RouteModule { }; uri: string; uris?: string[]; + host: string; + hosts?: string[]; create_time: number; update_time: number; };