我通常会发现TS非常令人困惑。我经常想扩展/合并现有声明或覆盖它们的某些部分,但是我不知道怎么做。
例如,我想知道如何更改t
方法的类型:
declare class VueI18n {
constructor(options?: VueI18n.I18nOptions)
readonly messages: VueI18n.LocaleMessages;
readonly dateTimeFormats: VueI18n.DateTimeFormats;
readonly numberFormats: VueI18n.NumberFormats;
locale: VueI18n.Locale;
fallbackLocale: VueI18n.Locale;
missing: VueI18n.MissingHandler;
formatter: VueI18n.Formatter;
silentTranslationWarn: boolean;
t(key: VueI18n.Path, values?: VueI18n.Values): VueI18n.TranslateResult;
t(key: VueI18n.Path, locale: VueI18n.Locale, values?: VueI18n.Values): VueI18n.TranslateResult;
// ...
我想更改它,以便它返回一个字符串,而不是VueI18n.TranslateResult
。此类型是从包(vue-i18n)导入的,因此我想以某种方式在自己的代码中覆盖它。