node.js - 如何在 Vue i18n 中进行语言切换
问题描述
我有一个 i18n 库连接到的 Vue 应用程序。让杰森翻译。一页 - 一个 JSON,其中包含所有翻译。JSON 看起来像这样:
{"en-En":{"same text":"same text","same text":"same text"},
"de-De":{"same text":"gleicher Text","same text":"gleicher Text"}}}
所有翻译首先在 multistoreLanguages.json 中加载,然后从那里加载到站点
if (extName === '.json') {
if (directory.indexOf('theme-default/resource/i18n') != -1){
const fileContent = fs.readFileSync(fullFileName, 'utf8')
const fileJsonObject = JSON.parse(fileContent)
Object.keys(fileJsonObject).forEach((languagesJson) => {
console.log(languagesJson, 'languagesJson')
messages[languagesJson] = Object.assign(messages[languagesJson] ? messages[languagesJson] : {}, fileJsonObject[languagesJson])
}
i18n.json 看起来像
import Vue from 'vue';
import VueI18n from 'vue-i18n';
Vue.use(VueI18n);
const i18n = new VueI18n({
locale: 'en',
fallbackLocale: 'de'
});
export default i18n;
所有文本都连接到库。如何在语言之间切换?
解决方案
推荐阅读
- json - 将运行时 7.3LTS(Spark3.0.1) 升级到 9.1LTS(Spark3.1.2) 后创建 PySpark 数据帧 Databricks 时,json 文件中的重复列会引发错误
- javascript - 水平滚动问题 - 没有元素关闭
- python - 从python到cpp程序的进程间通信
- javascript - 创建具有多个孩子的 div 的最有效方法
- arrays - 如何在以下程序中获得几个名称中的字符重复数?
- java - Spring AOP 不适用于 @Component 类
- html - CSS | :not(:first-child):beforSelector
- xml - 在 XSLT 中的嵌套 For-each 中继续主循环
- karate - 通过无头 chrome(type=chromedriver)运行时,空手道输入命令不起作用
- google-apps-script - 如何使用 App 脚本创建更多过滤器