VS Code и пряжа PnP
Есть ли несовместимости с yarn pnp sdk и typescript? Я установил SDK через
yarn sdks
и в журналах TS-сервера он, похоже, извлекается из кеша (например :)
/osi/disp/vob/web/.yarn/cache/typescript-patch-04b86b0e5c-24a439e062.zip/node_modules/typescript/lib/lib.es5.d.ts
Но VS Code не может найти модули:
Cannot find module 'react' or its corresponding type declarations.
Он создается и запускается через webpack. Похоже, это артефакт VS Code / sdk.
При попытке отследить разрешение реакции есть несколько странных замечаний:
Info 1216 [08:36:07.761] DirectoryWatcher:: Added:: WatchInfo: /osi/disp/vob/web/react 1 undefined Project: /osi/disp/vob/web/tsconfig.json WatchType: Failed Lookup Locations
Info 1217 [08:36:07.761] Elapsed:: 0.06486300379037857ms DirectoryWatcher:: Added:: WatchInfo: /osi/disp/vob/web/react 1 undefined Project: /osi/disp/vob/web/tsconfig.json WatchType: Failed Lookup Locations
Эти папки не существуют, и похоже, что они могут интерпретировать
'react'
в качестве
'./react'
tsconfig:
{
"compilerOptions": {
"baseUrl": "./",
"target": "es5",
"lib": [
"es6",
"dom",
"es2016",
"es2017"
],
"allowSyntheticDefaultImports": true,
"alwaysStrict": true,
"declaration": true,
"downlevelIteration": true,
"experimentalDecorators": true,
"jsx": "react",
"module": "commonjs",
"moduleResolution": "node",
"noFallthroughCasesInSwitch": true,
"noImplicitReturns": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"removeComments": true,
"resolveJsonModule": true,
"skipLibCheck": true
}
}
Простое воспроизведение: https://github.com/rcketscientist/vs-code-pnp-test
Цените любую информацию или указатели для дальнейшего исследования.
1 ответ
В настоящее время SDK несовместим с TS 4.5:
https://github.com/yarnpkg/berry/issues/3722
Понижение до 4.4.4 исправляет это:
- пряжа удалить машинопись
- rm -rf .yarn/sdks/машинопись
- пряжа добавить -D [адрес электронной почты защищен]
- пряжа dlx @yarnpkg/sdks база