React Native Expo @azure/cosmosdb 和 isomorphic-webcrypto 让我头疼

问题描述 投票:0回答:1

新手 React-Native Expo 用户和我被@azure/cosmosdb 和 isomorphic-webcrypto 依赖关系所困扰。这给我带来了两个问题。

  1. 我收到警告,不推荐使用 expo-random 取而代之的是 expo-crypto:请改用 ExpoCrypto.getRandomBytesAsync()。 https://docs.expo.dev/versions/latest/sdk/crypto/

经进一步调查,似乎 expo-random 被 isomorphic-webcryto 使用。

  1. 我无法在 EAS 中构建我的应用程序,当我运行 expo doctor 时,我遇到了很多关于不一致的版本依赖性的问题,我无法解决。

我在网上找不到任何解决方案,我自己也无法解决这个问题。我的数据已经在 Azure Cosmos DB 中,并且还有其他应用程序链接到此,所以我不愿意将数据移动到其他地方。

那么我有什么选择呢?有没有其他方法可以在不使用 @azure/cosmosdb 的情况下访问 Azure Cosmos DB?

react-native azure expo azure-cosmosdb
1个回答
0
投票

这里只有三个选项

奔跑

npx expo install --fix
将所有依赖项升级到最新或推荐的版本

两个,你可以在等待时回滚到世博会

sdk 46

选项 3 修补给你问题的依赖项,在你的情况下,通过修改

isomorphic-webcryto
包来使用
ExpoCrypto.getRandomBytesAsync()
测试它是否有效然后

奔跑

npm i patch-package

经过修改、测试以及是否一切正常

奔跑

npx patch-package [package-name]

这将创建一个补丁文件夹,一切都应该按预期工作,直到包正式更新

我没有测试过这个,但我之前已经修补过软件包,所以我知道即使在生产中修补也能正常工作。

© www.soinside.com 2019 - 2024. All rights reserved.