vue项目配置国际化 $t(‘‘)的意思和用法

这篇具有很好参考价值的文章主要介绍了vue项目配置国际化 $t(‘‘)的意思和用法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

vue 项目中 $t('')直接在html中直接调用这个函数 {{ $t('login.title') }}

$t是引入国际化后,挂到了Vue.prototype上的一个方法,接受一个字符串作为参数

<div class="title-container">
     <h3 class="title">
         {{ $t('login.title') }}
     </h3>
</div>
//---------$t('login.title') 我理解的意思是去当前语言环境下login对象的title值

1.main.js中引入vue-i18n

// 国际化 这个文件是本地创建的 主要是获取当前语言环境和相应的变量值
import i18n from './lang' 
new Vue({
    el: '#app',   
    i18n,
    render: h => h(App)
})

2.浏览器的语言环境不同,相应设置不同的语言配置文件

// ./lang/index.js 
import Vue from 'vue' //引入vue
import VueI18n from 'vue-i18n'  //引入vue的国际化插件
import Cookies from 'js-cookie' //我这里需要,所以引入轻量级的处理cookies的js
import elementZhLocale from 'element-ui/lib/locale/lang/zh-CN'// element-ui lang
import elementEnLocale from 'element-ui/lib/locale/lang/en' // element-ui lang
import zhLocale from './zh'     //本地创建的中文环境配置文件
import enLocale from './en'     //本地创建的英文环境配置文件

Vue.use(VueI18n) // 通过插件的形式挂载,通过全局方法 Vue.use() 使用插件

const messages = {
    en: {
        ...enLocale,
        ...elementEnLocale
    },
    zh: {
        ...zhLocale,
        ...elementZhLocale
    }
}
//获取当前语言环境,通过后台返回的语言或者浏览器语言环境
export function getLanguage() {
    const chooseLanguage = Cookies.get('language')//取后台设置的语言
    if (chooseLanguage) return chooseLanguage
    //如果后台没有返回语言则根据浏览器的语言环境返回语言变量
    const language = (navigator.language || navigator.browserLanguage).toLowerCase()
    const locales = Object.keys(messages)//获取前端设置的所有语言
    //遍历所有语言值组成的数组,匹配前端设置的语言能匹配到就返回改语言值
    for (const locale of locales) {
        if (language.indexOf(locale) > -1) {
            return locale
        }
    }
    //如果都没匹配到就直接返回英文
    return 'en'
}
const i18n = new VueI18n({
    //语言标识 this.$i18n.locale 通过切换locale的值来实现语言切换
    //如:this.$i18n.locale='en' 直接切换成英文,仅限于配置了语言的一些变量
    locale: getLanguage(),//调的上边这个函数
    messages              //上边配置的语言标识对应的不同配置
})
export default i18n

3.创建不同语言标识对应的文件,以中文环境为例文章来源地址https://www.toymoban.com/news/detail-576061.html

// ./lang/index.js   创建文件 存储语言对应的一些变量  
export default {  
    login: {
        title: '登录表单',
    },
    warning: '警告信息'
}

到了这里,关于vue项目配置国际化 $t(‘‘)的意思和用法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 国际化配置(ant-design-vue设置成中文)

    vue3 + ts + ant-design-vue 引用ant-design-vue的组件时,默认是英文的。 官网说明:https://www.antdv.com/components/date-picker-cn   我用的全局设置。在项目的App.vue文件里引入ant-design-vue自带的zh_CN,用a-config-provider 将RouterView包裹起来。但是我发现设置了全局,在使用日期选择框时还是英文,

    2024年02月22日
    浏览(40)
  • 如何在Vue3中配置国际化语言i18n

    1. 安装 vue-i18n 2. 创建一个i8n的配置文件 如:i18nConfig.js 3. 新建语言文件 zh-CN.js 和 en-US.js zh-CN.js 文件 en-US.js 文件 CONFIG.js 文件 4. 在 main.js 里面全局配置 通过上面四步即可配置完毕 下面说一下如何使用,分三种情况 在 .vue 组件中的 template 使用 在 .vue 组件中的 script 中使用 在

    2024年02月09日
    浏览(43)
  • electron+vue3全家桶+vite项目搭建【六】集成vue-i18n 国际化

    已发现 9.2.2版本的vue-i18n 如果使用cnpm安装,打包会报错,使用npm或者pnpm安装依赖没有问题 如果需要多语言支持,那么最好在项目搭建之初我们就集成好国际化 vue i18n官网 demo项目地址 关于多窗口国际化不同步更新状态的问题解决方案 1.我们现在src下面创建locals目录,里面创

    2023年04月12日
    浏览(60)
  • 如何优雅的实现前端国际化?

    JavaScript 中每个常见问题都有许多成熟的解决方案。当然,国际化 (i18n) 也不例外,有很多成熟的 JavaScript i18n 库可供选择,下面就来分享一些热门的前端国际化库! i18next 是一个用 JavaScript 编写的全面的国际化框架,提供标准的 i18n 功能,包括复数、上下文、插值、格式等。

    2024年01月23日
    浏览(43)
  • vue2+element-ui使用vue-i18n进行国际化的多语言/国际化

    注意:vue2.0要用8版本的,使用9版本的会报错 在src目录下,创建新的文件夹,命名为i18n zh.js en.js index.js main.js 使用方式一 效果图 使用方式二 效果图 使用方式三,在 效果图 ` 注意:这种方式存在更新this.$i18n.locale的值时无法自动切换的问题,需要刷新页面才能切换语言。解

    2024年02月07日
    浏览(50)
  • 项目国际化的难点痛点是什么

    如果有做过项目国际化的应该了解, 国际化的工作项大概包括以下几项: 【词条相关工作】 文本包裹翻译函数,如 $t 提取翻译词条到 json 文件里 翻译并更新 json 文件 【三方库相关工作】 组件库的国际化配置,如 element-ui 组件库 其他有词条场景的三方库的国际化配置 【图片

    2024年02月03日
    浏览(32)
  • 国内项目国际化后金额处理方案

      目标 : 已有的国内项目,需要部署国际化。需要考虑币种、金额货币精度、多语言、汇率、税等一系列问题。这里主要说的就是其中金额精度的处理。 现状 : 日常国内项目里,界面输入的金额是元,然后数据库存储以及与其他系统交互都是用的分,也是就固定的货币精

    2024年02月05日
    浏览(51)
  • 什么是前端国际化(internationalization)和本地化(localization)?

    聚沙成塔·每天进步一点点 前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发者,这里都将为你提供一个系统而

    2024年02月04日
    浏览(31)
  • SpringBoot集成国际化多语言配置

    在当今全球化的环境下,为了更好地满足用户的多语言需求,越来越多的应用程序需要支持国际化多语言配置。Spring Boot作为一种快速开发框架,提供了方便的国际化支持,使得应用程序可以轻松地适应不同的语言环境。通过集成Spring Boot的国际化多语言配置,应用程序可以根

    2024年02月07日
    浏览(40)
  • 前端网页国际化 translate.js,高效率翻译,傻瓜式教学

    什么?你不信?  那先简单实验一下吧,首先我们随便打开一个网站,然后F12——检查——控制台,复制以下代码,回车即可 选择一个语种,就翻译成功了 在网页底部加上以下代码 就像这样   默认他会给我们加一个id为 translate  的div盒子,我们可以把这个盒子放在我们需要

    2024年02月01日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包