React&react-native monorepo:node_module导入问题

我已经建立了一个带有纱线工作区的monorepo,其中包含一个react&react-native应用程序。这是结构:

├── package.json
├── packages
│   ├── shared
│   │   ├── package.json
│   │   └── components
│   ├── mobile
│   │   ├── android
│   │   ├── ios
│   │   ├── package.json
│   │   ├── src
│   │   ├── tests
│   │   └── yarn.lock
│   └── web
│       ├── public
│       ├── src
│       └── package.json
└── yarn.lock

为了在两个应用程序之间共享逻辑,表示组件被包装在ExampleComponentContainer.js中,该ExampleComponent.native.jsExampleComponent.js取决于捆绑器。我将redux和react-redux添加到共享包的package.json中,并将它们导入到ExampleComponentContainer.js和两个应用程序的入口点App.js中。虽然webpack从根node_modules文件夹导入模块没有问题,但如果我将它们指定为

,Metro只会选择react-native应用程序
import {useDispatch,useSelector} from '../../../../node_modules/react-redux/dist/react-redux';

仅使用

import {useDispatch,useSelector} from 'react-redux';

不起作用。这是我得到的错误:

iOS error message

这是我的metro.config.js

const path = require('path');

module.exports = {
  projectRoot: path.resolve(__dirname,'../../'),transformer: {
    getTransformOptions: async () => ({
      transform: {
        experimentalImportSupport: false,inlineRequires: false,},}),};

感谢您提供任何解决方法的提示。

z298961 回答:React&react-native monorepo:node_module导入问题

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2885906.html

大家都在问