1

我正在使用作为 npm 模块导出的 React 本机 HOC,由于链接问题,该模块使用@react-native-community/async-storage内部抛出。AsyncStorage of null安装模块后如何自动链接依赖项?

"dependencies": {
    "@react-native-community/async-storage": "^1.6.1",
    "react-native-webview": "^5.12.1"
}

我写了https://www.npmjs.com/package/react-native-google-sheet这个库,它react-native-webview用作依赖项。当我尝试使用react-native-google-sheet时,链接错误,因为安装依赖项不会链接库。有没有办法在我的库中链接依赖项?

更新:我觉得这有点令人困惑。假设 X 先生在 app.js 中使用模块 react-native-google-sheet,该模块在内部使用他可能不知道的 react-native-webview。X 先生只是一个尝试使用模块的最终用户,但由于它使用应该链接的模块而出现错误。现在,作为 react-native-google-sheet 的开发人员,我不希望最终用户面临这个问题。那么问题是,当 X 先生在安装 yarn add react-native-google-sheet 后是否有 react-native 链接 react-native-webview 时,有没有办法呢?更像是 react-native-google-sheet 模块会处理的“postinstall”。

4

1 回答 1

0

反应原生 0.60+

CLI 自动链接功能在构建应用程序时链接模块。

反应原生 <= 0.59

$ react-native link @react-native-community/async-storage 注意 对于使用 cocoapods 的 iOS,运行:

$ cd ios/ && 吊舱安装

升级到 React Native 0.60+

新的 React Native 带有自动链接功能,它会自动链接项目中的 Native Modules。为了让它工作,请确保首先取消链接异步存储:

$ react-native unlink @react-native-community/async-storage

于 2019-07-29T19:38:23.467 回答