react-native - 我可以通过 expo 获得在 android 上工作的 webpack

我正在尝试让一个 preact 库与 expo/react-native 一起工作

它可以在 webpack 中使用这个别名在网络上查找:

// webpack.config.js
const createExpoWebpackConfigAsync = require('@expo/webpack-config');
module.exports = async function(env, argv) {
  const config = await createExpoWebpackConfigAsync(env, argv);
  config.resolve.alias = {
    ...config.resolve.alias,
    'preact': 'react'
  }
  return config;
};

但是在 android 上我得到一个错误:Unable to resolve "preact"from "node_modules/.../....

有谁知道如何在网络之外使用相同类型的别名?

最佳答案

我无法找到一个解决方案,让 webpack 的别名可以在 Android 上的 Web 之外使用。由于典型的 invalid Hook call caused by duplicate React modules being used.,我需要它

据说 Yarn 工作区也可以解决这个问题,但我无法让它工作。

我找到的解决方案是更新我的本地库的 devDependencies 并且稍微轻松一点,这样它们都使用与主项目的 dependencies 中使用的相同的 React 模块。

- app
  |
  |-- package.json dependency:    "react":"18.1.0"
  
- local_library
  |
  |-- package.json devDependency:    
    "react": "file:../../../node_modules/react",

关于react-native - 我可以通过 expo 获得在 android 上工作的 webpack 解析别名吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60918258/

相关文章:

ag-grid - 如何在 Ag-Grid 中将相同的相邻行与动态行跨度合并?

c# - Microsoft.SharePoint.Client.IdcrlException :

scala - 在 Akka Streams 中模拟源

javascript - 使用 HTML5 播放双音频 MKV/AVI 视频

reactjs - 尝试使用 React-Spring 制作动画时出现错误 "TypeError:

c# - 如何从工作流对话框中删除标题中的问号?

python - 在 OR 工具中使用 IntVar

javascript - 为什么ioredis客户端开启keep-alive会超时?

tensorflow - Tensorflow text_generation 教程中有状态 GRU

python - np.array 到 PIL 图像 --> Typerror : Cannot h