{{ m(savedMessage) }}
``` ## How it works [#how-it-works] * **Registered messages.** [`msg()`](/docs/vue/reference/functions/msg) registers the source for extraction. When it receives options, it encodes source and context metadata that takes precedence over call-site options; without options, it returns the source string unchanged. * **Raw strings.** An ordinary string is looked up like a call through [`useGT()`](/docs/vue/reference/composables/use-gt) and can supply call-site `$context`. * **Nullish pass-through.** `null` returns `null`, and `undefined` returns `undefined`. * **Source fallback.** A missing or incompatible catalogue entry returns the original source string. * **Plain strings only.** Braces remain literal; no ICU formatting or interpolation is performed. Call the resolver from a template, `computed`, or another reactive effect when it should update in response to a [`createGT()`](/docs/vue/reference/functions/create-gt) catalogue or locale change. A value resolved once during setup is a plain string snapshot. A browser SPA initialised with [`initializeGTSPA()`](/docs/vue/reference/functions/initialize-gt-spa) preloads its initial catalogue and recreates snapshots after reloading following a locale change. ## Parameters [#parameters] `useMessages` takes no parameters. ## Returns [#returns] **Type** `{{ m(encodedMessage) }}
``` Resolve a raw string with context: ```vue{{ m('Open', { $context: 'Adjective: an open issue' }) }}
```