vue项目配置国际化 $t('')的意思和用法
web Vue 2023-06-02 1175 0
关于本站

“最难不过坚持”

本人承接扒站仿站,php网站维护,病毒查杀,网站编辑,网站改版,html制作

有需要网站维护,改版,病毒查杀,网站编辑,网站备案,html制作等相关的工作可以联系我。
本人有多年相关工作经验,也可提供免费咨询,交个朋友。
有需要探讨问题的朋友,也可以加我微信,共同探讨!
微信:15011482830 QQ:408917339

7439832 2655 39
最新评论
https://jueru.net/
评 留言
:weixiao:
评 留言
:shuijiao: :weiqu: :zhenbang: :leng:
评 留言
:yiwen: :yiwen: :yiwen: :yiwen:
评 EasySass: could not generate CSS file. See Output panel for details.
这个业务逻辑多少都有点奇怪了,阅读浏览次数增值在新闻详情页的控制器方法里setInc,这怎么还写进模型事件里了。如果非要用onAfterRead也可以,把新闻文章的内容单独分出来一个news_content表,然后把它和news做关联,然后给news_content表的onAfterRead事件做增值处理,这样点进新闻页内查询到文章内容时才会触发它。
评 TP6模型事件-查询后onAfterRead不好用
文章标签更多
ThinkPHP (254)
Mysql (58)
DedeCms (33)
jQuery (67)
证件照 (1)
setInc (4)
setDec (4)
onclick (5)
打开边栏(ESC) 关闭边栏(ESC)

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.创建不同语言标识对应的文件,以中文环境为例

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

版权声明:本篇文章来源于网络。 来源链接

相关推荐
接口返回request failed with status code 500错误
Vue | 2023-02-20 3213
接口返回request failed with status code 500错误 登录界面,验证账号密码成功,但是返回500错误 可能原因:linux服务器,用tp5搭建的后台及接口,会生成一部分缓存文件,但是linux默认没有权限创建数据,所以,只要在缓存文件夹runtime添加写的权限即可
解决errors and 0 warnings potentially fixable with the `--fix` option.问题
Vue | 2023-06-08 2369
解决errors and 0 warnings potentially fixable with the `--fix` option.问题 项目正常运行,就是有这个提示 找到.eslintrc.js注释掉// 'eslint:recommended'
评论:0条
评论加载中...
发表评论