Как получить инстанс Vue через Composition API

24 августа, 2022
1 минута чтения

При написании на TypeScript, обращаясь через this, бывает, появляется ошибка:

TS2532: Object is possibly 'undefined'.

Это особенно неудобно при работе с фреймворков Quasar:

this.$t('language')

Чтобы получить инстанс достаточно воспользоваться следующей конструкцией

import {getCurrentInstance} from 'vue'

// Например, получить инстанс quasar можно используя следующий код
const {$q} = getCurrentInstance().appContext.config.globalProperties

// а чтобы получить инстанс i18n
const {$t} = getCurrentInstance().appContext.config.globalProperties
// $t будет соответствовать this.$t

// Теперь можно получить данные локализации i18n
$t('language') as string

Денис Сергеевич Басковский

Философ, изобретатель и поэт.

Добавить комментарий Отменить ответ

Fluent Design
Предыдущая статья

Какую дизайн систему выбрать

dialog flow alice
Следующая статья

Создаем диалог для Алисы используя DialogFlow и Firebase

Exit mobile version