繁体   English   中英

Haste 模块命名冲突:将本机应用程序与 AWS 服务反应(放大项目)

[英]Haste module naming collision: react native app with AWS Service (Amplify Project)

我已经开始使用 react native 项目,之前是在本地代码中。 我想添加 Amazon Lex,所以按照链接中的以下步骤操作

https://aws-amplify.github.io/docs/js/interactions

下面是我的 App.js 文件

import React from 'react';
import { StyleSheet, Text, View } from 'react-native';

export default function App() {
  return (
    <View style={styles.container}>
      <Text>Open up App.js to start working on your app!</Text>
    </View>
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: '#fff',
    alignItems: 'center',
    justifyContent: 'center',
  },
});

我刚刚设置了放大库并为 LEX 添加了交互,但是当我尝试运行应用程序时开始出现错误。 在添加之前工作正常......一旦创建了 Amplify 文件夹并开始出现后端错误......

(节点:26180) UnhandledPromiseRejectionWarning:错误:jest-haste-map:Haste 模块命名冲突:重复的模块名称:myamplifyproject_cfnlambda_87887b9a 路径:C:\Users\temp\Desktop\myAmplifyProject\amplify6620\interactions\rc\lexpackage. json 与 C:\Users\temp\Desktop\myAmplifyProject\amplify#current-cloud-backend\interactions\lex900662fd\src\package.Z4668716ECDF35FCA56D 冲突

这个错误是由hasteImpl为不同的文件返回相同的名称引起的。 在 setModule (C:\Users\temp\Desktop\myAmplifyProject\node_modules\jest-haste-map\build\index.js:569:17) 在 workerReply (C:\Users\temp\Desktop\myAmplifyProject\node_modules\jest- haste-map\build\index.js:641:9) at processTicksAndRejections (internal/process/task_queues.js:93:5) at async Promise.all (index 30) ERROR 18:24 (node:26180) UnhandledPromiseRejectionWarning: Unhandled promise 拒收。 此错误源于在没有 catch 块的情况下抛出异步 function 内部,或拒绝未使用.catch() 处理的 promise。 (拒绝 ID:2)(节点:26180)[DEP0018] DeprecationWarning:不推荐使用未处理的 promise 拒绝。 将来,未处理的 promise 拒绝将使用非零退出代码终止 Node.js 进程。 (节点:26180) UnhandledPromiseRejectionWarning:错误:jest-haste-map:Haste 模块命名冲突:重复的模块名称:myamplifyproject_cfnlambda_87887b9a 路径:C:\Users\temp\Desktop\myAmplifyProject\amplify6620\interactions\rc\lexpackage. json 与 C:\Users\temp\Desktop\myAmplifyProject\amplify#current-cloud-backend\interactions\lex900662fd\src\package.Z4668716ECDF35FCA56D 冲突

这个错误是由hasteImpl为不同的文件返回相同的名称引起的。 在 setModule (C:\Users\temp\Desktop\myAmplifyProject\node_modules\jest-haste-map\build\index.js:569:17) 在 workerReply (C:\Users\temp\Desktop\myAmplifyProject\node_modules\jest- haste-map\build\index.js:641:9) at processTicksAndRejections (internal/process/task_queues.js:93:5) at async Promise.all (index 30) (node:26180) UnhandledPromiseRejectionWarning: Unhandled ZB321DE37BDC299EC807D 拒绝。 此错误源于在没有 catch 块的情况下抛出异步 function 内部,或拒绝未使用.catch() 处理的 promise。 (拒绝编号:3)

我已经使用了 react-native 的所有最新版本。

我尝试了下面的解决方案,但没有工作如何让反应本机打包程序忽略某些目录

我只是按照步骤......我哪里出错了......错过了任何东西......请帮助......这是我第一个反应原生的应用程序......我真的迷路了

经过许多不眠之夜和测试不同的解决方案,我终于能够通过..我正在使用最新的 react-native > 0.59(我猜是 0.61)我的应用程序已经在根目录中创建了 metro.config.js 文件,必须编辑相同的文件。

const blacklist = require('metro-config/src/defaults/blacklist');   // on top

resolver: {
    blacklistRE: blacklist([/#current-cloud-backend\/.*/])         //add within module export  
  }

我呼吸了新鲜空气……现在一切正常……

请不要创建新的 metro.config.js 或 rn-cli.config.js。 使用#current-cloud-backend而不是后端文件夹编辑当前的 metro.config.js。 这个非常重要。 后端将被忽略....

这将对将来的某人有所帮助....因为给出的解决方案都不起作用....对于最新的本机反应。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM