美文网首页
uniapp nvue页面国际化失效问题解决

uniapp nvue页面国际化失效问题解决

作者: 前端金城武 | 来源:发表于2023-03-29 10:21 被阅读0次
看官方文档说nvue要单独引用,原因是nvue使用的是weex渲染,拿不到vue的this,挂载的一切vue实例都失效了

uniapp官方国际化文档:https://uniapp.dcloud.net.cn/tutorial/i18n.html

官方代码:
<script>
  import {
    initVueI18n
  } from '@dcloudio/uni-i18n'

  // const messages = {} 此处内容省略,和 vue 全局引入的写法一致

  const { t } = initVueI18n(messages)

  export default {
    data() {
      return {
      }
    }
  }
</script>

发现官方的压根用不了.....,然后我就直接简单粗暴的把语言文件引入,用计算属性判断了

<template>
    <view>
        <text>{{i18n.rentBattery}}</text>  //nvue页面文字只能通过text标签上的class才能更改文字样式
,    </view>
</template>
<script>
import langEn from '@/lang/en'
import langZhCN from '@/lang/zh-CN'

export default {
    data() {
      return {
      },
      computed: {
      i18n(){
        let lang = uni.getStorageSync('CURRENT_LANG') || uni.getLocale() //获取当前语言
        return lang == 'zh-Hans' ? langZhCN.index : langEn.index //根据语言返回语言包
       }
    },
    }
  }

</script>

亲测能用...

相关文章

网友评论

      本文标题:uniapp nvue页面国际化失效问题解决

      本文链接:https://www.haomeiwen.com/subject/hykfddtx.html