标签: react-localization

使来自 react-intl 的 FormattedMessage 中的 id 继承自自定义 TypeScript 接口以启用 VS IntelliSense 和类型检查

鉴于react-localization它没有日期和数字格式,并且严重依赖于我们决定切换到的一位开发人员,react-intl因为从长远来看它似乎更安全。

https://github.com/stefalda/react-localization/graphs/contributors

我们之前的代码是这样的:

本地化服务.ts

import LocalizedStrings from 'react-localization';

import svSE from './languages/sv-SE';
import enUS from './languages/en-US';
import arSA from './languages/ar-SA';

export default new LocalizedStrings({
    svSE,
    enUS,
    arSA
});
Run Code Online (Sandbox Code Playgroud)

ILanguageStrings.ts

export interface ILanguageStrings {
    appName: string
    narration: string
    language: string
}
Run Code Online (Sandbox Code Playgroud)

en-US.ts

import { ILanguageStrings } from '../ILanguageStrings';

const language: ILanguageStrings = {
    appName: "Our App",
    narration: "Narration",
    language: "Language"
}

export default language;
Run Code Online (Sandbox Code Playgroud)

然后可以导入本地化并ILanguageStrings通过 Visual Studio 中的 IntelliSense 可见并通过 TypeScript 进行验证。

import localization from …
Run Code Online (Sandbox Code Playgroud)

typescript reactjs react-intl react-localization

5
推荐指数
1
解决办法
1040
查看次数