Извините, если на этот вопрос был дан ответ, но я не могу найти ответ где-либо.Если есть хороший ответ, пожалуйста, можете ли кто-нибудь связать его.
Я пытаюсь расширить существующий интерфейс машинописи, который находится внутри node_module в моем приложении.Под «расширением» я подразумеваю перезапись используемого определения по умолчанию.'meta' в настоящее время установлен, и я хочу изменить его, а не создавать новый интерфейс для использования, который использует интерфейс из текущей библиотеки.
Я хотел бы попытаться присоединить это к глобальному экземпляру этого.$ router.currentRoute.meta вместо того, чтобы использовать 'как ТИП' каждый раз, когда я его использую.
router.ts
export interface Meta {
Auth: boolean,
displayName: string | null
}
shims-vue.d.ts
import {Meta} from '@/router'
declare module "vue/types/vue" {
interface Vue{
$router: {
currentRoute: {
meta: Meta // This should be set to my new Meta interface rather than the default meta?: any type within vue-router/types/router.d.ts
}
}
}
}
page.vue
const name = this.$router.currentRoute.meta.displayName // type: any
Спасибо всем.