react native i18n插值:跨组件trans

想要实现动态插值以及插入元素,如下效果

这个找了蛮久的,官网的例子在我这无效,所以网上找了比较久,没能理解用法。最后是在 github issue 中看到别人的用法,自己理解下实现出来了,所以这里记录下。

例如vue的写法,直接使用插槽:

html 复制代码
     <i18n-t keypath="auth.agreement" tag="p">
        <template #appName>
          {{ $t('app.name') }}
        </template>
        <template #termsService>
          <b> {{ $t('auth.termsService') }} </b>
        </template>
        <template #privacyPolicy>
          <b> {{ $t('auth.privacyPolicy') }} </b>
        </template>
      </i18n-t>

React Native 的写法:

html 复制代码
  <Trans
        values={{
          name: 'ddd',
          count: 22,
        }}
        i18nKey="userMessagesUnread"
        parent={Text}
        components={{
          1: <Text style={{ color: 'red', fontWeight: 'bold' }}></Text>,
          5: <Text style={{ color: 'blue' }}></Text>,
        }}
      ></Trans>

附上官网:https://react.i18next.com/legacy-v9/trans-component

说真的 ,这个官网看了很久没看明白这个 Trans 组件,用法完全不同,不确定是不是版本的问题。

json 复制代码
    "react": "18.3.1",
    "react-dom": "18.3.1",
    "i18next": "^24.2.1",
    "react-i18next": "^15.4.0",
相关推荐
gnip40 分钟前
首页加载、白屏优化方案
前端·javascript
gnip1 小时前
包体积,打包速度优化
前端·javascript
A5rZ2 小时前
缓存投毒进阶 -- justctf 2025 Busy Traffic
前端·javascript·缓存
未来之窗软件服务3 小时前
浏览器CEFSharp133+X86+win7 之多页面展示(三)
前端·javascript·浏览器开发·东方仙盟
胡斌附体3 小时前
elementui cascader 远程加载请求使用 选择单项等
前端·javascript·elementui·cascader·可独立选中单节点
孟陬4 小时前
写一个 bun 插件解决导入 svg 文件的问题 - bun 单元测试系列
react.js·单元测试·bun
孟陬4 小时前
CRA 项目 create-react-app 请谨慎升级 TypeScript
react.js·typescript
甘露寺4 小时前
深入理解 Axios 请求与响应对象结构:从配置到数据处理的全面指南
javascript·ajax
招风的黑耳5 小时前
Axure 高阶设计:打造“以假乱真”的多图片上传组件
javascript·图片上传·axure
flashlight_hi6 小时前
LeetCode 分类刷题:209. 长度最小的子数组
javascript·算法·leetcode