有时候,我们会遇到这样的需要,对某段内容做国际化,这段内容中的某些文字需要根据不同场景做不同的翻译,下面举例如何实现国际化传入变量:

1、直接插入变量的用法

下面是中文国际化文件 zh.js:

export default {
    text:'你好,我是{name}'
}

下面是英文国际化文件 en.js :

export default {
    text:'Hello, I am {name}'
}

Vue组件中使用如下:

<template>
    <div>{{$t('text',{name:language==='zh'?nameZh:nameEn})}}</div>
</template>
<script>
    export default {
      data () {
          return {
            language:'zh', //语言环境
            nameZh:'张三',
            nameEn:'Zhang San'
          }
      }
    }
</script>

2、变量以HTML的形式插入的用法

 下面是中文国际化文件 zh.js:

export default {
    text:'我的邮箱账号是{email},谢谢'
}

下面是英文国际化文件 en.js :

export default {
    text:'My email account is {email}, Thank you!'
}

Vue组件中使用如下:

<template>
    <div>
        <span>Hello,</span>
        <i18n path="text" :tag="false">
          <template slot="email">
            <span style="color:red">34234@qq.com</span>
          </template>
        </i18n>
    </div>
</template>
GitHub 加速计划 / vu / vue
109
18
下载
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:4 个月前 )
9e887079 [skip ci] 1 年前
73486cb5 * chore: fix link broken Signed-off-by: snoppy <michaleli@foxmail.com> * Update packages/template-compiler/README.md [skip ci] --------- Signed-off-by: snoppy <michaleli@foxmail.com> Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 1 年前
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐