Невозможно создать простой файл определения TypeScript - PullRequest
0 голосов
/ 27 ноября 2018

Я пытаюсь создать файл определения vue-moment, он прекрасно компилируется в IntelliJ, но при сборке vue-cli я получаю:

This dependency was not found:

* vue-moment in ./src/main.ts

добавлено в package.json:

"types": "types/index.d.ts",

main.ts

import VueMoment from 'vue-moment';
Vue.use(VueMoment);

index.d.ts:

import Vue, {PluginFunction} from 'vue';
import moment from 'moment';

export interface VueMoment {
  install: PluginFunction<never>;
}
declare const VueMoment: VueMoment;
export default VueMoment;

declare module 'vue/types/vue' {
  interface Vue {
    readonly $moment: typeof moment;
  }
}

На самом деле это не может быть проще.Это точно такой же код, как и во многих других библиотеках, которые работают.

Пакет установлен и находится внутри node_modules.

Полностью застрял там, отчаянно нужна подсказка, где я сделал ошибку.Заранее спасибо за помощь.

1 Ответ

0 голосов
/ 28 ноября 2018

О, Боже, наконец-то обнаружена проблема.

В библиотеке vue-moment в корне vue-moment.js было

Перемещение в /src исправило ее.

Компилятор TypeScript почему-то взял его вместо /types/vue-moment.d.ts, но не IntelliJ, что странно, это тот же самый tsconfig ...

Я не забуду этот!

...