问题标签 [babel-plugin-react-intl]
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.
react-intl - 使用 babel-plugin-react-intl 有什么好处?
我一直在努力学习和理解react-intl
图书馆,我遇到了babel-plugin-react-intl
图书馆。图书馆的页面上有这样的描述;
Extracts string messages for translation from modules that use React Intl.
我想知道将提取哪些字符串消息?
另外,提取消息有什么好处?
react-intl - 如何使用 babel-loader 加载 babel-plugin-react-intl?
我最近使用 create-react-app 初始化了一个反应应用程序。我弹出了应用程序,现在我将所有文件都导出到了我的主目录。这个设置创建了一个 babel.dev.js 而不是使用 .babelrc(它使用 babel-loader)。
我试图弄清楚如何在没有 .babelrc 文件的情况下配置 react-intl 和 babel-plugin-react-intl 。
文档说 .babelrc 被推荐
通过 .babelrc(推荐)
.babelrc
使用 babel-loader 有这种行为的语法是什么?现在 babel.dev.js 中的插件看起来像这样:
我的组件目前的字符串定义如下:
reactjs - 为什么 react-intl 的 defineMessages 在传入对象引用时会抛出错误?
我正试图react-intl
从 Yahoo! i18n 项目,我遇到了一个奇怪的问题。我的目标是将基本字符串(英语)存储在组件之外的某种 JSON 文件中,以便非开发人员可以编辑它们。
这似乎是合乎逻辑的,我可以只import
使用它们然后在组件中使用我需要的部分,但是defineMessages
当我这样做时,该函数会导致错误。
编辑:问题似乎与babel-plugin-react-intl
插件和“导出”默认字符串有关。该应用程序运行良好,但当npm run build
命令运行时发生错误。
.babelrc:
网络包配置:
包.json:
有效的代码:
失败的代码:
尝试直接传递引用而不是对象时收到的错误消息:
react-intl - 如何使用 React Intl 动态添加语言环境数据?
我正在使用 React-intl 来实现 UI Util 库的国际化。该库有一个名为 i18n 的文件夹,我在其中放置不同语言环境的 json 文件。如果该库的用户想要添加对其他语言环境的支持,他/她可以放置其他带有相应语言环境的键/值对的 json 文件。
但是 React-intl 需要在之前为各自的语言环境导入和添加LocaleData。例如,
有没有办法在 React-intl 中添加LocaleData 并动态导入相应语言环境的语言环境库?
javascript - yahoo/babel-plugin-react-intl 评估 .native.js 文件扩展名
yahoo/babel-plugin-react-intl插件是否应该能够评估 react-native 项目中扩展名为 .native.js 的文件?
当我控制台记录评估的文件时,我的项目中的所有 .jsx 和 .js 文件都被正确评估,但 .native.js 根本没有被评估。这些文件包含标准 JSX,当我将文件扩展名更改为 .js 时,它们会被正确评估。但是,由于我们当前的设置,我们希望保留扩展名 .native.js 而不是将它们更改为仅 .js
有没有人知道如何让这个插件工作,以便 .native.js 文件也将被评估?
reactjs - React-intl 在 react 之外定义消息
我有 utils.js 文件。
我想使用https://github.com/yahoo/react-intl翻译这些文本 - [低、中、高、关键] 。所以我定义了消息
现在最后一步是什么?
如何将消息传递回函数?应该有formatMessage
功能,但它只在反应上下文中。
reactjs - 使用 Webpack 1 构建时从 react-intl 消息中呈现反斜杠
概括
当我使用 Webpack Dev Server 加载我的应用程序时,我的消息显示正常:
\
.nginx
但是,当我将应用程序捆绑到磁盘并通过\\
.
细节
我正在使用react-intl
@2.2.3(此时最新)和babel-plugin-react-intl
@2.3.1(此时最新)。我的目标是使用\
字符定义默认消息并以任何方式呈现它(FormattedMessage
,formatMessage
等)
我正在使用 Webpack / Babel 捆绑我的应用程序。我的webpack.config.js
文件中没有 Babel / react-intl 特定配置,但是我确实使用DefinePlugin
设置process.env
为'development'
或'production'
当我使用 Webpack Dev Server 加载我的应用程序时,我的消息显示正常:\
. 但是,当我将应用程序捆绑到磁盘并通过 提供捆绑包时nginx
,我看到我的反斜杠重复:\\
. 我在这里有以下说明:https ://github.com/yahoo/babel-plugin-react-intl/issues/13#issuecomment-151944191关于使用 4 个\
字符来显示最终\
字符。
对于它的价值,我尝试过使用 JSX 字符串、JS 字符串、使用 1、2 和 4 个\
字符,以及我能想到的任何其他愚蠢的组合。
非常感谢任何提示或建议。谢谢你。
代码示例
我如何定义消息的示例
我如何呈现消息的示例
另一个例子,它也不起作用
另一个失败的例子:
javascript - 为 react/react-intl 动态导入语言 json 文件
这是我配置客户端以通过 react-intl 呈现正确语言的方式。
但是,我想根据 cookie 中的语言环境动态导入 localeData。因此,如果我的用户的语言环境是“en”,我只会加载 en.json 文件。
这样做的正确方法是什么?尝试创建一个函数,但我无法将数据正确传递给消息。
谢谢
reactjs - intl.formatMessage 不起作用 - react-intl
我正在尝试使用react-intl
. 当我使用它时<FormattedMessage id='importantNews' />
,它运行良好。但是,当我将以下代码与 一起使用时intl.formatMessage()
,它无法正常工作并引发一些错误。我不知道它有什么问题。
我的根组件是这样的,
有人可以帮我解决这个问题吗?提前致谢。
reactjs - 如何使用 EL 表达式处理/连接 react-intl 消息?
此代码有效:
例如:如果<MessageResource id="T_DUMMY_VALUE_KEY"/>
给出字符串患者
并${this.props.patCount}
给出10,那么标签将变成:
患者 (10)
但我的要求是将所有字符串处理放在标签属性中,如下所示:
这不起作用,并给我这样的输出:
[对象对象] (10)
请帮忙。