quasar利用i18n實現國際化

2021-10-10 10:12:08 字數 1962 閱讀 6866

安裝依賴(vue-i18n)

npm install vue-i18n
建立 src/boot/i18n.js 檔案,內容如下

import vue from 'vue'

import vuei18n from 'vue-i18n'

import messages from 'src/i18n'

vue.use(vuei18n)

const i18n = new vuei18n()

}// if you need to import it from

// other files, then:

export

建立 src/i18n/ 資料夾,裡面存放專案所支援的每種語言的定義,示例目錄如下

index.js

在 quasar.config.js 檔案中的 boot 小節中引用翻譯檔案

// quasar.conf.js

return

5. 在sfc中設定翻譯塊

要通過vue-i18n-loader在vue檔案中使用嵌入式模板元件,必須確保使用所選的包管理器將@intlify/vue-i18n-loader和yaml-loader依賴項新增到專案中。然後在quasar.conf.js檔案中更改webpack構建選項。在這種情況下,翻譯以yaml格式儲存在塊中。

// quasar.conf.js

build: ,

]// 或者下面這種寫法也可以

// loader: '@kazupon/vue-i18n-loader ! yaml-loader'

})...

}}

webpack 配置中允許指定多個 loader,可以在 import 語句或任何等效於 「import」 的方式中指定 loader。使用 ! 將資源中的 loader 分開。分開的每個部分都相對於當前目錄解析。

import styles from 'style-loader!css-loader?modules!./styles.css';
通過前置所有規則及使用 !,可以對應覆蓋到配置中的任意 loader。

例如現在需要新增乙個新的語言——德語

建立新檔案,src/i18n/de/index.js然後在其中複製檔案內容,src/i18n/en-us/index.js然後更改語言字串。

更改src/i18n/index.js並在其中新增新de語言。

import enus from './en-us'

import de from './de'

export default

主要有三種情況

在html正文中 (mykey1)

在屬性中 (mykey2)

以程式設計的方式 (mykey3)

// or

// }

在配置完成後,雖然頁面內部**已經完成了語言的切換,但是需要進行頁面的重新整理才能夠在頁面中展示出來,手動重新整理會導致頁面仍保持預設語言,所以還需要進行下面的配置

src/boot/i18n.js

const i18n = new vuei18n();
src/store/user/mutations.js

// 語言切換器

export const set_lang = (state, data) => ;

src/store/user/state.js

export default ;
語言切換設定頁面

watch: 

}

i18n呼叫自己引數 I18N的前後端實現

所需工具 1 vue 2 vue i18n 前期設定 1 構建兩個json語言字典,如果就中英文切換就分別構建 string en.json 和string zh.json,格式如下 2 讀取前一步驟建立的字典,並構造vuei18n元素 獲取本地語言包 非同步獲取會沒有response,需要暫時關閉...

Cakephp中如何實現i18n?

好像網上一直沒有比較詳細的中文資料來講述如何使用cakephp來實現i18n。正好昨天被逼無奈的將 中的提示中文化了一把,略有心得,簡而志之。中文化cakephp有如下幾步 在需要進行中文化的地方使用 函式,如下所示 this is the string i need to translate tr...

I18N對應備忘表

中國 簡體中文 簡體中文 中國 zh cn 正體中文 台灣地區 zh tw 正體中文 香港 zh hk 英語 香港 en hk 英語 美國 en us 英語 英國 en gb 英語 全球 en ww 英語 加拿大 en ca 英語 澳大利亞 en au 英語 愛爾蘭 en ie 英語 芬蘭 en f...