Как я могу исправить предложения по импорту VSCode в Lerna Monorepo?

VSCode отлично справляется с импортом автозаполнения импорта, однако внутри монорэпо (Lerna) он предлагает только относительные пути от одного пакета к другому, например:

import example from '../../../@scope/example/lib/index.html'

Мне нужно сослаться на другие пакеты, используя их имена пакетов:

import example from '@scope/example';

мой jsconfig.json который лежит в основе моего монорепо:

{
  "compilerOptions": {
    "target": "es6",
    "jsx": "react"
  },
  "include": ["**/src/**/*.js"],
  "exclude": [
    "**/node_modules/*",
    "**/dist/*",
    "**/coverage/*",
    "**/demo/*",
    "**/lib/*",
    "**/public/*"
  ]
}

Есть ли способ получить правильное автозаполнение в VSCode?

Примечание: плагин доступен, но он работает только с .ts файлы.

1 ответ

Вы можете настроить paths в jsconfig.jsonсообщить инструментам VS Code, как решить@/пути.

В вашемjsconfig.json, добавлять:

{
  "compilerOptions": {
    "baseUrl": ".",
    "paths": {
       "@scope/example/*": [ "./path/to/scope/example/*" ]
    }
  },
   "exclude": [
     "node_modules"
  ]
}

Вы можете настроить пути для сопоставления с любым префиксом пути к подкаталогу в вашей рабочей области. Смотрите документацию по путям для более подробной информации.

Обратите внимание, что пути влияют только на импорт файлов JavaScript или машинописных файлов; .html импорт по-прежнему не будет работать должным образом

Другие вопросы по тегам