我有一个问题,我的React建设,也许与AWS放大,但我有麻烦牵制下来。
当它启动的时候,我可以在本地运行我的程序,没有任何问题。我把它上传到GitHub,我的CI/CD设置和amplify试图构建它。Amplify说它在构建过程中坏了。在那一刻,我发现我不能运行npm update。
我已经把它弄得一团糟了,可能已经把环境弄得更糟了。如果有人有任何建议,我真的很感激。
我最初遇到的错误是这样的:
npm WARN ERESOLVE overriding peer dependency
npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve
npm ERR!
npm ERR! While resolving: react-drag-drop-files@2.3.7
npm ERR! Found: react@16.14.0
npm ERR! node_modules/react
npm ERR! peer react@"18.1.0" from react-native@0.70.6
npm ERR! node_modules/react-native
npm ERR! peer react-native@">=0.56" from react-native-get-random-values@1.7.0
npm ERR! node_modules/react-native-get-random-values
npm ERR! react-native-get-random-values@"^1.4.0" from @aws-sdk/middleware-retry@3.6.1
npm ERR! node_modules/@aws-sdk/middleware-retry
npm ERR! @aws-sdk/middleware-retry@"3.6.1" from @aws-sdk/client-cognito-identity@3.6.1
npm ERR! node_modules/@aws-sdk/client-cognito-identity
npm ERR! 11 more (@aws-sdk/client-comprehend, ...)
npm ERR! peer react-native@"^0.0.0-0 || 0.60 - 0.71 || 1000.0.0" from @react-native-async-storage/async-storage@1.17.11
npm ERR! node_modules/@react-native-async-storage/async-storage
npm ERR! peer @react-native-async-storage/async-storage@"^1.13.0" from @aws-amplify/core@4.0.2
npm ERR! node_modules/@aws-amplify/core
npm ERR! @aws-amplify/core@"4.0.2" from @aws-amplify/analytics@5.0.0
npm ERR! node_modules/@aws-amplify/analytics
npm ERR! 11 more (@aws-amplify/api-graphql, @aws-amplify/api-rest, ...)
npm ERR! 1 more (amazon-cognito-identity-js)
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer react@"^18.0.0" from react-drag-drop-files@2.3.7
npm ERR! node_modules/react-drag-drop-files
npm ERR! react-drag-drop-files@"^2.3.7" from the root project
npm ERR!
npm ERR! Conflicting peer dependency: react@18.2.0
npm ERR! node_modules/react
npm ERR! peer react@"^18.0.0" from react-drag-drop-files@2.3.7
npm ERR! node_modules/react-drag-drop-files
npm ERR! react-drag-drop-files@"^2.3.7" from the root project
完全卸载react-drag-drop-files也没有帮助,它只是用另一个依赖问题代替了它;
我看到的建议大多是在执行npm配置设置legacy-peer-deps=true后重新安装。这看起来并不理想,但我找不到如何实际解决依赖冲突的具体描述。我尝试卸载并重新安装相关模块,但没有工作。
最后,我试着启用旧的peer deps,删除我的模块,然后重新安装。这也不起作用,当我试图在本地运行时,留下了这个错误:
./节点模块/aws放大React/lib-esm/放大UI/放大UI组件-React. js尝试导入错误:“a”未从“@aws-amplify/ui”中导出(作为“AmplifyUI”导入)。
我也不能解决这个问题,所以我再次删除模块,再次运行npm install,现在我又回到了最初的错误。
1条答案
按热度按时间ej83mcc01#
我也遇到过同样的问题,但是使用--legacy-peer-deps应该可以,但是你可能只是在本地运行它,而不是在Amplify中构建应用程序的时候。
进入AWS Amplify中的应用程序,从侧边栏菜单中选择构建设置。
其中:
至少对我来说是这样的,希望对我有帮助!
文件:https://docs.aws.amazon.com/amplify/latest/userguide/build-settings.html