我正在创建一个新的React项目,我在react-router
和history
之间存在依赖性问题:
ERROR in ./~/react-router/lib/match.js
Module not found: Error: Cannot resolve module 'history/lib/Actions' in /app/node_modules/react-router/lib
@ ./~/react-router/lib/match.js 15:15-45
ERROR in ./~/react-router/lib/useRouterHistory.js
Module not found: Error: Cannot resolve module 'history/lib/useQueries' in /app/node_modules/react-router/lib
@ ./~/react-router/lib/useRouterHistory.js 6:18-51
ERROR in ./~/react-router/lib/createMemoryHistory.js
Module not found: Error: Cannot resolve module 'history/lib/useQueries' in /app/node_modules/react-router/lib
@ ./~/react-router/lib/createMemoryHistory.js 6:18-51
ERROR in ./~/react-router/lib/useRouterHistory.js
Module not found: Error: Cannot resolve module 'history/lib/useBasename' in /app/node_modules/react-router/lib
@ ./~/react-router/lib/useRouterHistory.js 10:19-53
ERROR in ./~/react-router/lib/createMemoryHistory.js
Module not found: Error: Cannot resolve module 'history/lib/useBasename' in /app/node_modules/react-router/lib
@ ./~/react-router/lib/createMemoryHistory.js 10:19-53
ERROR in ./~/react-router/lib/browserHistory.js
Module not found: Error: Cannot resolve module 'history/lib/createBrowserHistory' in /app/node_modules/react-router/lib
@ ./~/react-router/lib/browserHistory.js 5:28-71
ERROR in ./~/react-router/lib/hashHistory.js
Module not found: Error: Cannot resolve module 'history/lib/createHashHistory' in /app/node_modules/react-router/lib
@ ./~/react-router/lib/hashHistory.js 5:25-65
ERROR in ./~/react-router/lib/createMemoryHistory.js
Module not found: Error: Cannot resolve module 'history/lib/createMemoryHistory' in /app/node_modules/react-router/lib
@ ./~/react-router/lib/createMemoryHistory.js 14:27-69
我正在使用react-router
上一版3.0.0
,history
3.0.0
作为其package.json
的依赖项。
我正在使用npm
版本3.10.8
,即使history
模块由react-router
依赖项安装,我也会在package.json
中添加它,如react-router
中所述{1}} docs。
react-router
正在history/lib/
搜索其要求,而history
模块的文件位于history/
(无lib
文件夹)。
由于它不依赖于我的配置/安装,而是依赖于第三方模块,我不知道该怎么做,我很惊讶没有发现任何与此相关的问题。
答案 0 :(得分:13)
问题实际上是遵循complete(df, week, project_id, fill = list(events_in_time = 0))
安装说明,在我们自己的react-router
中添加history
模块。
自行安装package.json
的最新版本而非history
所需的版本会造成此冲突。
react-router
> = 3.0时,react-router
是具有固定版本要求的依赖项,与history
本身一起安装:
react-router
无需在└─┬ react-router@3.0.0
└── history@3.2.1
中手动安装,如果您没有指定正确的所需版本,则会产生冲突。
感谢@ShubhamKhatri指责我这个方向。
答案 1 :(得分:2)
路径需要更新,不再是
history / lib / createHashHistory
只是
历史/ createHashHistory
也可能从react-route-dom导入HashRouter。 HashRouter取代了Router,不再需要将历史作为道具传递。
答案 2 :(得分:1)
如果您使用的npm版本大于3.0.0。
请注意,您还需要安装history
包,因为它是React Router
的对等依赖项,并且不会在npm版本freater 3.0.0以后自动安装。
运行npm install history
,你应该很好。