@@ -17,8 +17,8 @@ import Button from '../../button';
1717import FilterWrap from './FilterWrap' ;
1818import type { FilterButtonRef } from './FilterButton' ;
1919import ConfigProvider from '../../config-provider' ;
20- import type { Locale } from '../../locale' ;
21- import enUS from '../../locale/en-US' ;
20+ import type { FilterLocale , Locale } from '../../locale' ;
21+ import defaultLocale from '../../locale/en-US' ;
2222import {
2323 FilterProvider ,
2424 type FilterComponentName ,
@@ -46,6 +46,7 @@ export interface ResponsiveFilterGroupProps {
4646 extra ?: ReactNode ;
4747 /** 是否显示计数 默认 true */
4848 showCount ?: boolean ;
49+ locale ?: FilterLocale ;
4950}
5051
5152/**
@@ -117,9 +118,14 @@ const ResponsiveFilterGroup: FC<ResponsiveFilterGroupProps> = ({
117118 style,
118119 extra,
119120 showCount = true ,
121+ locale : customLocale ,
120122} ) => {
121123 const { locale : contextLocale } = useContext ( ConfigProvider . ConfigContext ) ;
122- const filterLocale = ( contextLocale as Locale ) ?. Filter || enUS . Filter ;
124+ const filterLocale : FilterLocale = {
125+ ...defaultLocale . Filter ,
126+ ...contextLocale ?. Filter ,
127+ ...customLocale ,
128+ } ;
123129 // 如果没有传入 label,使用国际化默认值
124130 const filterLabel = label ?? filterLocale ?. filters ;
125131 const containerRef = useRef < HTMLDivElement > ( null ) ;
@@ -459,12 +465,12 @@ const ResponsiveFilterGroup: FC<ResponsiveFilterGroupProps> = ({
459465 filterButtonRef . current ?. closePopover ( ) ;
460466 } }
461467 >
462- Apply
468+ { filterLocale ?. apply }
463469 </ Button >
464470 ) }
465471 { onClearAll && (
466472 < Button type = "link" size = "small" onClick = { handleClearAll } >
467- Clear All
473+ { filterLocale ?. clearAll }
468474 </ Button >
469475 ) }
470476 </ Flex >
0 commit comments