Nx Workspace: приложение React Native/Expo не может разрешить библиотечный модуль во время сборки EASJavascript

Форум по Javascript
Ответить
Anonymous
 Nx Workspace: приложение React Native/Expo не может разрешить библиотечный модуль во время сборки EAS

Сообщение Anonymous »

Я работаю с монорепозиторием Nx, содержащим приложение React Native/Expo и библиотеку TypeScript. Приложение отлично работает при локальном запуске в режиме разработки, но не может выполнить сборку при использовании EAS-сборки с ошибкой:

Код: Выделить всё

Error: While trying to resolve module `@test-org/mylib` from file `/private/var/folders/.../build/apps/test-app/src/app/App.tsx`, the package `/private/var/folders/.../build/node_modules/@test-org/mylib/package.json` was successfully found. However, this package itself specifies a `main` module field that could not be resolved (`/private/var/folders/.../build/node_modules/@test-org/mylib/dist/index.js`. Indeed, none of these files exist.
В моем приложении Expo я импортирую библиотеку следующим образом:

Код: Выделить всё

import { mylib } from '@test-org/mylib';
Я только что использовал генератор nx/js:lib для создания библиотеки. Может быть, в этом дело? Но я хочу иметь возможность использовать эту библиотеку как в своем приложении Expo, так и в приложении Node

Код: Выделить всё

nx g @nx/js:lib libs/mylib
Я предполагаю, что tsconfig.lib.json не совсем подходит для того, что мне нужно, поскольку он пытается разрешить узел.

Код: Выделить всё

{
"extends": "../../tsconfig.base.json",
"compilerOptions": {
"baseUrl": ".",
"rootDir": "src",
"outDir": "dist",
"tsBuildInfoFile": "dist/tsconfig.lib.tsbuildinfo",
"emitDeclarationOnly": false,
"module": "nodenext",
"moduleResolution": "nodenext",
"forceConsistentCasingInFileNames": true,
"types": ["node"]
},
"include": ["src/**/*.ts"],
"references": []
}
Мне удалось использовать этот генератор, сборка работала нормально, и я смог импортировать библиотеку

Код: Выделить всё

nx generate @nx/react-native:library
Но эта библиотека специфична для React Native, и я не смогу импортировать ее в свое приложение Node.
Почему моя сборка Expo не может импортировать мою библиотеку? Использую ли я правильную библиотеку, и если да, то какую конфигурацию мне нужно изменить, чтобы сборка Expo заработала?

Подробнее здесь: https://stackoverflow.com/questions/797 ... g-eas-buil
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»