我尝试制作以下文件:
// i18n.ts
const domainMessages = {
fa: {
resources: {
members: {
name: "ﺎﻌﺿﺍﺀ",
fields: {
email: "ﭗﺴﺗ ﺎﻠﮑﺗﺭﻮﻨﯿﮑﯾ",
first_name: "ﺎﺴﻣ"
}
}
}
}
};
export default domainMessages;
并将 i18nProvider 定义为:
mport domainMessages from './i18n';
const messages = {
'fa': { ...farsiMessages, ...domainMessages}
};
const i18nProvider = polyglotI18nProvider(locale => messages[locale], 'fa');
export const SiteAdmin = () => (
<Admin
theme={myTheme}
layout={MyLayout}
loginPage={LoginPage}
i18nProvider={i18nProvider}
dataProvider={dataProvider}
authProvider={authProvider}>
<Resource name="members"
options={{ label: 'ﺎﻌﺿﺍﺀ' }}
list={ListGuesser}
edit={EditGuesser}
show={ShowGuesser} />
...
但是,当我单击
members
处的http://localhost:5173/members/3
资源时,它会显示英文字段标签。解决办法是什么?
解决方案是使用
domainMessages.fa
,如下所示:
const messages = {
'fa': { ...farsiMessages, ...domainMessages.fa}
};