Как Vue.use () плагин javascript в проекте TypeScript, который имеет типизацию - PullRequest
0 голосов
/ 25 января 2019

Я пытаюсь использовать Semantic-UI-Vue в моем проекте VUE. Тем не менее я получаю следующую ошибку при попытке Vue.use(SuiVue):

Аргумент типа 'typeof import ("semantic-ui-vue") "нельзя назначить параметру типа' PluginObject <{}> | PluginFunction <{}> '. \ N Тип' typeof import ("semantic-ui-vue") "нельзя назначить типу PluginFunction <{}> '. \ N Type' typeof import (" semantic-ui-vue " ) 'не соответствует для подписи' (Vue: VueConstructor, параметры ?: {} | undefined): void '. "

Я создал .d.ts файл, который позволяет мне импортировать SuiVue:

declare module 'semantic-ui-vue'{}

И я импортирую его в свой app.ts как:

import * as SuiVue from 'semantic-ui-vue';

Что мне нужно сделать, чтобы этот плагин можно было использовать в проекте машинописного текста без отключения глобальных настроек TypeScript, таких как noImplicitAny?

1 Ответ

0 голосов
/ 25 января 2019

Заменить declare module 'semantic-ui-vue'{} на declare module 'semantic-ui-vue';


declare module 'semantic-ui-vue'{} означает, что модуль имеет тип пустого объекта {}.

declare module 'semantic-ui-vue'; означает, что модуль имееттип any

см. Сокращенные окружающие модули in https://www.typescriptlang.org/docs/handbook/modules.html


Как выяснил OP, вам нужно изменить оператор импорта на import SuiVue from 'semantic-ui-vue';чтобы он работал

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...