当前位置: 首页 > news >正文

网站和域名区别吗在线装修设计平台

网站和域名区别吗,在线装修设计平台,网站带支付源码,友情链接页面开篇 下面是从创建vue项目开始,完整使用i18n实现国际化功能的步骤,希望对您有所帮助。 完整步骤 创建项目 创建项目,并在创建项目的时候选择vuex,router 选择3.x版本 后面随意选即可,下面是完整的代码结构 安装vue-i18n,并封装…

开篇

下面是从创建vue项目开始,完整使用i18n实现国际化功能的步骤,希望对您有所帮助。

完整步骤

创建项目

  • 创建项目,并在创建项目的时候选择vuex,router
    在这里插入图片描述
  • 选择3.x版本
    在这里插入图片描述
  • 后面随意选即可,下面是完整的代码结构
    在这里插入图片描述

安装vue-i18n,并封装相关方法

  • 安装vue-i18n
npm install vue-i18n@next
  • 在src下新建i18n文件夹,并在该文件夹下新建lang文件夹,下面存放数据源(zh.json,en.json)
//zh.json
{"msg": {"hello": "你好,世界"}
}// en.json
{"msg": {"hello": "Hello World"}
}
  • 在src下创建i18n/index.js
import { createI18n } from "vue-i18n";
import zh from './lang/zh.json'
import en from './lang/en.json'
import store from '@/store'const messages = {zh,en
}// 返回当前lang
function getCurrentLang() {return store.getters.lang // 获取当前语言
}const i18n = createI18n({//这里选择false是为了配合使用vue3的composition API风格的新式API,//如果是vue2,就要选择true了legacy: false, globalInjection: true, // 全局注入locale: getCurrentLang(),messages
})export default i18n
  • 在vuex下添加一个模块来管理当前语言(store/index.js)
import { createStore } from 'vuex'export default createStore({state: {locale: 'en', // 默认语言},getters: {lang: state => state.locale},mutations: {SET_LOCALE(state, locale) {state.locale = locale}},actions: {setLocale({commit}, locale) {commit('SET_LOCALE', locale)}},modules: {}
})
  • 在main.js中注册i18n实例
import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
// 注册i18n
import i18n from './i18n'createApp(App).use(store).use(router).use(i18n).mount('#app')

封装LangSelect组件,实现一键切换语言

  • 在src/components下新建LangSelect组件,并定义切换语言的方法
<template><div><select v-model="selectedLocale" @change="changeLang"><option value="en">English</option><option value="zh">中文</option></select></div>
</template><script>
import { computed } from "vue";
import {useStore} from 'vuex';
import {useI18n} from 'vue-i18n'export default {setup() {const store = useStore();const { locale } = useI18n();const selectedLocale = computed({get: () => store.state.locale,set: (value) => {store.dispatch('setLocale', value)locale.value = value; // 更改i18n语言}})const changeLang = () => {locale.value = selectedLocale.value}return {selectedLocale,changeLang}}
}
</script>
  • 在App.vue中引入并使用LangSelect.vue组件,实现一键切换语言
<template><div id="app"><LangSelect/><p>{{ $t('msg.hello') }}</p></div>
</template><script>
import LangSelect from './components/LangSelect.vue'export default {components: {LangSelect}
}
</script><style></style>
  • 当前效果如下:
    在这里插入图片描述
    在这里插入图片描述

以上便是vue-i18n的详细使用步骤,希望对您有所帮助。实际项目中,可能使用方式比上面复杂很多,比如说封装方法需要在store或者pinia中建立单独的模块,LangSelect组件样式要更复杂,但万变不离其宗,总体的步骤依然是上面这些。

http://www.yayakq.cn/news/517193/

相关文章:

  • 做网站霸屏公司销售好做吗网站建设软件的英文
  • 济南资海网站建设公司网站推广效果不好原因是
  • 国内网站开发公司建设企业网站的好处
  • 诚讯通网站网站建设免费空间注册导航
  • 做内贸什么网站资源比较多微网站建设哪家便宜
  • dede网站名称更改不了广东工厂网站建设
  • 设计网站怎么收费重庆个人建站模板
  • 中国市政建设局网站口碑营销的案例及分析
  • php和asp.net建立电商网站比较怎样免费安装wordpress
  • 广东重工建设监理有限公司官方网站买到域名怎么做网站
  • 电子商务网站开发课程江苏金安建设公司网站
  • 网址的域名贵阳网站优化排名
  • 邢台seo一站式wordpress防伪码
  • 农产品网站管理员怎么做建筑工程网上办事系统
  • 可以看的网站的浏览器有哪些减肥单页网站
  • 公司网站推广方法邯郸市建设局网站政策
  • 中国内销做哪个网站深圳公司电话
  • 长沙网站seo哪家公司好如何制作自己个人小程序
  • 滁州网站建设信息推荐互联网的推广
  • 最便宜的网站叫什么名字wordpress收录p
  • 做英语题目的网站公众号推广合作平台
  • 网站seo推广怎么做王烨晨
  • 惠州网站模板建站wordpress设置后台信息
  • 重庆网站建设培训WordPress文章生成图片
  • 毕业设计做网站做什么好小程序制作开发培训
  • 大连网站建设开源wordpress固定连接如何设置最好
  • 企业 网站 推广微信扫码抢红包网站做
  • 深圳定制网站制作咨询电话seo关键词平台
  • 网页游戏网站哪个最好如何制作app网站
  • 北京通州网站建设公司全景网站开发待遇