Я использую NX для создания интегрированного монорепозитория . Я создал приложение для реагирования, используя флаг --js, затем я изменил файлы js на jsx. После того, как я создал общий компонент в папке libs с помощью этой команды и флага --js, я заменил все js на jsx. Однако, когда я пытаюсь импортировать, я получаю эту ошибку:
Executing task: npx nx run myapp:serve
> nx run myapp:serve:development
➜ Local: http://localhost:4200/
Error: The following dependencies are imported but could not be resolved:
@demo-2/mylibrary (imported by /home/user/Desktop/demo-2/apps/myapp/src/app/app.jsx)
Are they installed?
at file:///home/user/Desktop/demo-2/node_modules/vite/dist/node/chunks/dep-f7d05e3f.js:44138:23
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at async file:///home/user/Desktop/demo-2/node_modules/vite/dist/node/chunks/dep-f7d05e3f.js:43547:38
Как я могу это решить? Я понятия не имею.
Мой tsconfig.base.json выглядит так:
{
"compileOnSave": false,
"compilerOptions": {
"rootDir": ".",
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"importHelpers": true,
"target": "es2015",
"module": "esnext",
"lib": [
"es2020",
"dom"
],
"skipLibCheck": true,
"skipDefaultLibCheck": true,
"baseUrl": ".",
"paths": {
"@demo-2/mylibrary": [
"libs/mylibrary/src/index.jsx"
],
"@myorg/is-even": [
"libs/is-even/src/index.js"
],
"odd": [
"libs/odd/src/index.js"
],
"odd2": [
"libs/odd2/src/index.js"
]
}
},
"exclude": [
"node_modules",
"tmp"
]
}



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Если кому-то это понадобится в будущем, я добавляю свое решение здесь:
Я создаю новый проект с помощью NX, в качестве сборщика выбрал webpack. Моя первоначальная настройка NX выглядит так:
> NX Let's create a new workspace [https://nx.dev/getting-started/intro]
✔ Choose what to create · integrated
✔ What to create in the new workspace · react-monorepo
✔ Repository name · repo_name
✔ Application name · app_name
✔ Bundler to be used to build the application · webpack
✔ Default stylesheet format · scss
✔ Enable distributed caching to make your CI faster · No
После того, как я создал компонент реакции в JS с помощью этой команды nx generate @nx/react:library mylibrary --js, а также новое приложение реакции в js (по умолчанию входит в ts) с флагом --js.
После того, как я импортировал компонент mylibrary в новое приложение и изменил файл tsconfig.tools.json: я добавил js в список подключаемых файлов следующим образом: "include": [ "**/*.ts", "**/*.js" ]