Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么我的react redux saga应用程序在从中删除immutableJs后会崩溃?_Javascript_Reactjs_Redux_React Redux_Redux Saga - Fatal编程技术网

Javascript 为什么我的react redux saga应用程序在从中删除immutableJs后会崩溃?

Javascript 为什么我的react redux saga应用程序在从中删除immutableJs后会崩溃?,javascript,reactjs,redux,react-redux,redux-saga,Javascript,Reactjs,Redux,React Redux,Redux Saga,问题 这是一个非常困难和奇怪的问题,因为它也很难解释。 我从头开始: 我使用以下样板文件启动了一个新应用程序: 在回购协议的所有者做了一些小改动之前,一切都很顺利(请参阅最新提交的“AddPrettierConfig;UpgradeDeps;RemoveImmutable”) 因为我不喜欢immutable,所以我认为删除它会很好。所以我参与了这个项目,做了和他完全一样的事情。我还安装了与他的package.json相同的dep版本 现在应用程序正在启动,当我加载页面时,我在devtools中

问题

这是一个非常困难和奇怪的问题,因为它也很难解释。 我从头开始:

我使用以下样板文件启动了一个新应用程序:

在回购协议的所有者做了一些小改动之前,一切都很顺利(请参阅最新提交的“AddPrettierConfig;UpgradeDeps;RemoveImmutable”)

因为我不喜欢immutable,所以我认为删除它会很好。所以我参与了这个项目,做了和他完全一样的事情。我还安装了与他的
package.json
相同的dep版本

现在应用程序正在启动,当我加载页面时,我在devtools中只看到一个空白页面,其中有一些错误

错误可在此处找到:

他所做的一个“更大”的改变是从
react-router-redux
移动到
connected-react-router

同样在
app/utils
下的
injectReducer
injectSaga
文件中,他做了一些更改,主要是导入
ReactReduxContext
。 我特别提到这一点,因为我认为这与这些变化有关

我试过什么

我在特定文件中加入了一些
debugger
语句,并发现了以下内容:

  • injectReducer
    文件运行并获得正确的道具
  • injectSaga
    文件根本没有运行,我想是因为它在执行之前就崩溃了。但我不知道在哪里,为什么
我知道这很难解决,因为这是一个非常大的样板代码,但您是我最后的希望(我已经在这里创建了一个问题:)

也许你们中有一位经验丰富的人可以找到问题所在(可能是从上次版本的回购与当前提交之间的差异,或者错误消息)。

我真的没有更多“特定于问题”的代码可以提供,因为它可以是任何东西

如果有人想帮我,这里是当前回购协议,其结构与此样板相同,但有我自己的代码:

master
分支正在工作,这是在我“迁移”到新版本之前,没有IMMUTABLE和其他更改。
noImmutable
分支是“问题子级”

哦,我的天啊,那感觉太棒了。 我只是将我的回购协议与样板回购协议区别如下:

git remote add -f b path/to/repo_b.git
git remote update
git diff noImmutable:app/utils remotes/b/master:app/utils
git remote rm b
我发现我在
injectSaga.js
文件中输入了一个字母

我键入了:
static contextTypes=ReactReduxContext
而不是
static contextType=ReactReduxContext
(因此“s”太多:D)

在我修复后,一切都恢复正常,工作完美。 像这样的时刻正是我喜欢编码和Git的原因