使用uniapp开发国际化nvue编译对象

vue国际化看官网,就不重点说明

主要说下nvue官网并不明确,且如果是对象的国际化就有问题

首先看官网


其实就是

 index.js
import langEn from './en'
import zhHans from './zh-Hans'
 
export default {
    'en': langEn,
    'zh-Hans': zhHans
};

这种弊端是如果是对象就有问题,无法获取,下面使用借助i18n,通过原生链方法来实现

i18n.js
    import messages from '@/lang/index.js';
	const i18nEnable = false;//自行判断
	let currentLang
	if (i18nEnable) {
		currentLang = uni.getStorageSync('CURRENT_LANG')
	} else {
		currentLang = "zh-Hans"
	}
	let i18nConfig = {
		locale: currentLang, // set locale
		messages // set locale messages
	}
	
	// #ifdef VUE2
	import Vue from 'vue'
	import VueI18n from 'vue-i18n'
	Vue.use(VueI18n)
	const i18n = new VueI18n(i18nConfig)
	// #endif
	
	// #ifdef VUE3
	import {
		createI18n
	} from 'vue-i18n'
	const i18n = createI18n(i18nConfig)
	// #endif

    export default i18n

你可能感兴趣的:(uni-app,vue.js,前端)