Код Visual Studio: при начальной установке VueJS не удается найти модуль "@ / .." - PullRequest
0 голосов
/ 02 мая 2018

Как вы знаете, @ является заполнителем для /src, и приложение компилируется и работает правильно, если я его так использую. Но мой VSCode считает, что модуля нет, и показывает сообщение об ошибке:

Visual Studio Code: cannot find module

Вопрос 1: Как я могу научить VSCode, как найти модули?

Аналогичная ситуация следующая:

export default class HelloWorld extends Vue {
  @Prop() private msg!: string;
}

В IDE есть две ошибки (пока приложение компилируется и работает правильно):

1) !: выделено красным -> Ожидается выражение

enter image description here

2) string подчеркнуто красным -> Элемент 'string' неявно имеет тип 'any'.

enter image description here

Но на самом деле это не ошибки, это обычный синтаксис, и VSCode не может справиться с ним. Расширение Vetur (Vue Tooling для VSCode) уже установлено.

Вопрос 2: Как мне вообще работать с Vue + TypeScript в VSCode? Что (все) я должен учитывать?

1 Ответ

0 голосов
/ 03 мая 2018

Импорт *.svg

VS Code не знает, как самостоятельно импортировать файл svg. Чтобы это исправить, добавьте файл .d.ts в корневой каталог вашего проекта, содержащий:

declare module '*.svg' {
  const content: any;
  export default content;
}

Я обнаружил, что добавление этого объявления в src/shims.d.ts не работает. Это работало только при создании файла .d.ts в корне проекта (например, <root>/index.d.ts).

Expression expected ошибка

Это из Vetur 0.11.7, который использует более старую версию TypeScript, которая не поддерживает утверждения определенного присваивания , введенные в TypeScript 2.7. (vuejs/vetur Выпуск № 723 )

Vetur 0.11.8 Preview устраняет проблему, обновляя более новую версию TypeScript, но она еще не выпущена, поэтому вам придется установить VSIX вручную . Простейший метод IMO - использовать раскрывающийся список команд из представления Расширения кода VS для установки загруженного vetur-0.11.8.vsix. Исправление доступно в Vetur 0.12.1, который устанавливается из VS * Code Расширения view.

...