在製作 Vue-i18n 多國語系專案時,有一部分的文字本來是吃本地端的語系檔,而需求改為吃線上的語系檔,但改完後出現了下面的警告
[intlify] Not found ‘xx’ key in ‘zh_TW’ locale messages.
[intlify] Fall back to translate ‘xx’ key with ‘en’ locale.
解譯bug
⚠️ [intlify] Not found ‘xx’ key in ‘zh_TW’ locale messages.
在 i18n 語系 ‘zh_TW’ 檔案中找不到訊息
⚠️ [intlify] Fall back to translate ‘xx’ key with ‘en’ locale.
在 i18n 語系 ‘en’ 檔案中找不到訊息
錯誤原因
一開始會根據目前地區 zh_TW 的語言包去找符合的訊息,
因我在 i18n 設定了 fallbackLocale,
1 | fallbackLocale: 'en' |
所以當在 zh_TW 語言包找不到檔案中的文字,就會到 en 語言包去找
因為需求都改為吃線上的語言包,所以 $t 就可以拿掉了,沒拿掉就會一直無限去抓本地的語言包
1 | {{ $t( data.gamename ) }} |
如何解決
將 $t 拿掉就可以了
1 | {{ data.gamename }} |