问题标签 [formatjs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
82 浏览

javascript - 反应 intl formatDate 小数秒

我一直在使用react-intl为我的网络应用程序提供国际化。国际化的一个方面是适当地格式化日期(例如en-US: MM/dd/yyyyvs en-GB: dd/MM/yyyy)。

此代码对于典型的日期时间格式非常有效:

已经要求毫秒精度(如源数据中所提供),但我似乎无法让它工作。我尝试fractionalSecondDigits按如下方式使用该选项:

这里有一个有用的实时编辑器:https ://formatjs.io/docs/intl#formatdate

任何想法都非常感激。

0 投票
2 回答
189 浏览

javascript - 在 Format.Js 消息提取期间忽略特定文件路径

使用Create React App和 TypeScript 时,会在目录中自动生成一个文件srcreact-app-env.d.ts. 该文件似乎需要支持此处讨论的图像导入:https ://github.com/facebook/create-react-app/issues/6560 。

使用Format.JS时,我使用以下命令提取消息:

但不幸的是,这会导致此错误:

我需要同时处理 .ts 和 .tsx 文件。我试图破解搜索模式以排除特定的文件名,但我现在完全被难住了,因为我不确定它的精确规范。

作为一种解决方法,我可以在提取之前删除文件,但这很烦人!

0 投票
0 回答
47 浏览

javascript - 如何设置 FormatJs 提取路径以从许多文件夹和子文件夹中获取所有消息

在我使用 React 和 FormatJS 的项目中,我有很多文件夹、子文件夹和子文件夹等等。

设置 Formatjs 提取并编译为

输出只是来自 lib 一个子文件夹的消息,我想知道如何获取所有消息。

我的文件夹结构没有文件但在组件内部,例如我们有组件子文件夹等等

需要帮助为 formatJS 设置正确的路径以提取我项目中的所有消息。我正在尝试不同的解决方案,但无法弄清楚什么是正确的。

0 投票
0 回答
92 浏览

reactjs - Format.js 提取嵌套在组件中的 FormattedMessage

是否可以从其 CLI 运行 Format.js extract 并从FormattedMessage嵌套在另一个组件中的组件中获取结果?

组件:

然后我打算在整个项目中重用该组件,如下所示:

我希望这会被提取,但是在运行时

我总是得到一个空的 json 文件{}

babel-plugin-formatjs用于捆绑和自动 ID 生成

0 投票
1 回答
264 浏览

javascript - Gatsby:WebpackError [React Intl] 找不到所需的“intl”对象。需要存在于组件祖先中

我在我的Gatsby 应用程序中使用React Intl进行国际化。该应用程序按预期运行良好,但在执行命令期间构建失败并出现错误。npm startnpm run build

代码

错误

npm run build命令因此错误而失败。

0 投票
0 回答
25 浏览

javascript - 为什么FormatJS只从一个文件夹中提取消息

在我的 React 项目库中,我添加了 FormatJS 库以进行内部化。我试图在线跟进文档,但无论我做什么 formatJS 提取都只从一个文件夹中提取,我不知道如何修复它。

有关详细信息,我有一个开放的 repo 以查看完整代码:GitHub 上的项目

我得到的文件夹仅此form-builder-preview而已。

我的文件夹结构:

在 package.json 这是我设置的:

我也在使用 Babel 插件。

什么应该是使提取工作的正确路径。

0 投票
0 回答
16 浏览

reactjs - 如何在作为包开发的 React 库中从安装此包的更高级别应用程序传递语言环境

我的问题是关于在 React 中开发库的最佳实践或方法,该库必须支持不同的语言环境,例如名为FormatJS.

我想知道如何在 React 中开发一个库,该库必须接受来自另一个应用程序的语言环境,该特定库将安装在该应用程序中。

举个例子,假设我们有一个应用程序,它可以由用户或不同的方法来设置像法语这样的语言环境。

无论我们的图书馆是什么,它的默认语言都是英语,但需要用法语显示消息和文本。

假设我们已经编译并准备好了所有法语翻译。

如何从法语应用程序中获取该语言环境并将其传递给图书馆,以便它从英语切换到法语?

我想对此有一些想法,也许我可以参考一些材料,因为我无法真正找到解决我的困境的答案。

0 投票
0 回答
29 浏览

reactjs - formatjs 不翻译出现在敬酒中的消息?

我有一个像这样的英文编译翻译文件:

在我的葡萄牙语编译翻译文件中也是如此:

我肯定将我的语言环境设置为 pt-BR,因为我页面上的其他字符串正在被翻译,但 toast 消息没有(这只是一个示例)。我没有收到任何说找不到翻译的错误,所以我真的完全不确定为什么它没有翻译。它一直回退到默认消息。

0 投票
0 回答
35 浏览

javascript - 如何在 React-intl 日期格式中使用 '-' 而不是 '/'

我正在使用 React-intl/FormatJS 库来格式化我的日期值,我想了解如何将格式更改为日期中的“-”而不是“/”。

CodeSandbox中的示例

我现在的例子和过去的日期只是一个 ISO 格式,比如

我想输出的是尽可能Aug-26-2021没有逗号的日期

在我的示例中,输出是Aug 26, 2021 10:06 AM,我想将其更改为我需要的

0 投票
0 回答
19 浏览

reactjs - 组件提前 1 天返回 - 我该如何处理?

日期转换似乎很时髦。我有一个简单的硬编码日期 - expireDate = "2050-01-01"。
我想在 formatjs 库中的格式化日期组件中使用它,如下所示:

但是,它一直返回一个提前一天的格式化日期:“12/31/2049”
我以前听说过这样的问题,但还没有真正找到解决方案 - 任何可能有帮助的想法?