이 글에서는 국제화를 달성하기 위해 vue-i18n을 사용한 vue 구현 코드를 주로 소개하고 참고하겠습니다.
Requirements
회사 프로젝트는 국제화되어야 합니다. 중국어/영어를 전환하려면 버튼을 클릭하세요
1. vue 인스턴스에 삽입하고 프로젝트에 호출 API 및 템플릿 구문을 구현합니다.
npm install vue-i18n --save
3. 해당 언어팩
zh.js 중국어 언어팩 : import VueI18n from 'vue-i18n'
Vue.use(VueI18n) ;
const i18n = new VueI18n({
locale: 'zh-CN', // 语言标识, 通过切换locale的值来实现语言切换,this.$i18n.locale
messages: {
'zh-CN': require('./common/lang/zh'), // 中文语言包
'en-US': require('./common/lang/en') // 英文语言包
}
})
new Vue({
el: '#app',
i18n, // 最后
router,
template: '<App/>',
components: { App }
})
en.js 영어 언어팩 :
export const lang = { homeOverview:'首页概览', firmOverview:'公司概述', firmReports:'财务报表', firmAppendix:'更多附录', firmIndex:'主要财务指标', firmAnalysis:'对比分析', firmNews:'新闻事件档案', firmOther:'其他功能', }4. 언어 전환 버튼 컨트롤
this.$i18n .locale, 'zh-CN'에 값을 할당하면 탐색 표시줄이 중국어가 되고, 값이 'en-US'이면 영어가 됩니다. export const lang = {
homeOverview:'Home overview',
firmOverview:'firmOverview',
firmReports:'firmReports',
firmAppendix:'firmAppendix',
firmIndex:'firmIndex',
firmAnalysis:'firmAnalysis',
firmNews:'firmNews',
firmOther:'firmOther'
}
<p class="top_btn" @click="changeLangEvent">中文</p>
정적 렌더링:
changeLangEvent() { console.log('changeLangEvent'); this.$confirm('确定切换语言吗?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => { if ( this.$i18n.locale === 'zh-CN' ) { this.$i18n.locale = 'en-US';//关键语句 console.log('en-US') }else { this.$i18n.locale = 'zh-CN';//关键语句 console.log('zh-CN') } }).catch(() => { console.log('catch'); this.$message({ type: 'info', }); }); }
-ui 요소인 경우 번역하려는 항목 앞에 콜론을 추가하세요. 예: label="user name"이 다음으로 변경됩니다. label="$t('order.userName')"
동적 렌더링:<span v-text="$t('lang .homeOverview')"></span> <span>{{$t('lang .homeOverview')}}</span>
위에서 모든 사람을 위해 편집했습니다. 앞으로 모든 사람에게 도움이 되기를 바랍니다. 관련 기사:
JavaScript는 지정된 범위의 시간 목록을 생성합니다.nodejs 메서드를 사용하여 express 기반 파일 업로드를 구현합니다.
webpack.config.js 매개 변수 세부 정보를 기반으로
위 내용은 vue는 vue-i18n을 사용하여 국제화 코드를 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!