Я хочу раздать пакет для выставки. Этот пакет был создан при сборке моего приложения в экспозиции SDK36.
Как и многие зависимости expo, я широко использую расширения .ios.js
, .android.js
и .web.js
.
При импорте источника, который я распространил на npm, импорт только для распознавателя .js
без каких-либо различий.
В качестве примера этот пакет должен работать с экспо:
Это @expo/webpack-config
разрешенные расширения:
[
".web.expo.ts",
".web.expo.tsx",
".web.expo.mjs",
".web.expo.js",
".web.expo.jsx",
".expo.ts",
".expo.tsx",
".expo.mjs",
".expo.js",
".expo.jsx",
".web.ts",
".web.tsx",
".web.mjs",
".web.js",
".web.jsx",
".ts",
".tsx",
".mjs",
".js",
".jsx",
".json",
".wasm"
]
Но это не так, я должен импортировать вручную, используя суффикс в моих источниках с .web
.
Как настроить expo
или мой распределенный пакет, чтобы иметь возможность импортировать надлежащие источники для каждой среды, когда источники импортируются из node_modules
?
Редактировать
Я ошибался, ожидая, что мои расширения будут работать с полем main
моего package.json
, я перенастроил репо с помощью:
/home/dka/workspace/github.com/yeutech-lab/react-cookiebot/src
├── CookieBot.js
├── CookieBot.native.js
└── index.js
Вопросы:
- I использовали
.native.js
, поэтому мои reactjs пользователи (не только пользователи expo и response-native) будут импортировать файл .js
по умолчанию - Из-за (1) , другие реагируют пользователю (ни реагирующему, ни экспо) не нужны какие-то дополнительные настройки для поддержки расширений реагирующего
.web.js
, .ios.js
, .android.is
, .native.js
и .js
. - Если я предпочитаю
.web.js
вместо (1) , мой реагирующий пользователь не сможет сделать так, как в (2) , и в этом случае: как бы они могли сконфигурировать собственные расширения реакции в своем проекте? - Для всех активных пользователей может Я знаю, где расширение может быть настроено в нативных проектах? (я считаю, что веб-проект можно настроить в веб-пакете с помощью
config.resolve.extensions
)