mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-05 10:53:59 +00:00
i18n: keep the page's locale in a vue-i18n instance
The application views install one vue-i18n instance that holds the active locale and the catalogs. src/i18n/index.js stays free of Vue: bindLocale() keeps its locale in the instance's ref, so t(), tn() and the Intl formatters read it from there and a view that translates while rendering renders again when the locale changes. A tag written straight to the ref is normalized. Message formatting, catalogs and call sites are unchanged, and switching language still reloads the page. The instance outlives the views: unmounting one no longer disposes it. The browser build defines vue-i18n's feature flags and drops its message compiler, which Core does not use.
This commit is contained in:
1 parent
22d4cf8ee7
commit
2c72a038d5
12 files changed
+330
-44
No files matched your search
@@ -1,3 +1,11 @@
|
||||
- The page's locale lives in a vue-i18n instance installed in every
|
||||
application view, and `t()`, `tn()` and the Intl formatters read it from
|
||||
there, so a view that translates while rendering renders again when the
|
||||
locale changes. `bindLocale` (`src/i18n/index.js`) keeps the locale in a
|
||||
given ref; Core's Vite config builds vue-i18n without its message
|
||||
compiler. Catalogs, messages and call sites are unchanged
|
||||
(samehkhamis, #0000).
|
||||
|
||||
- Cockpit's Display popover shows the Display panel's own HUD, Detection,
|
||||
Parameters and 3D groups through Vue teleports: `CockpitDisplayPortal`
|
||||
publishes the popover's slots (`publish`, with `afterRender` to lay out once
|
||||
|
||||
Reference in new issue
Block a user