Reactjs React router错误:超级表达式必须为null或函数

Reactjs React router错误:超级表达式必须为null或函数,reactjs,react-router,Reactjs,React Router,我是新来的。我在做出如下反应后将其包括在内: <script src="http://fb.me/react-0.12.2.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/reactrouter/0.13.2/ReactRouter.js"></script> 我有一个错误: 未捕获的TypeError:超级表达式必须为null或函数,而不是未定义的 我做错了

我是新来的。我在做出如下反应后将其包括在内:

<script src="http://fb.me/react-0.12.2.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/reactrouter/0.13.2/ReactRouter.js"></script>

我有一个错误: 未捕获的TypeError:超级表达式必须为null或函数,而不是未定义的


我做错了什么?

虽然这个问题已经解决,但我发布了一个解决方案,因为我有一个类似的问题。希望它能对其他人有所帮助

我没有用路由器。我使用React with Webpack,Babel作为加载程序。我犯的错误和JustWonder说的一样

我在使用ES6课程。原来,我已经打过了

class App extends React.component {...}

React.component
更改为
React.component
(大写字母“C”)为我解决了这个问题。

我通过将React版本升级到0.13.3解决了这个问题

npm install react@0.13.3

我遇到了另一个可能发生这种情况的场景

我将
v0.13.x
作为一个直接依赖项,而我的一个依赖项具有
v0.12.x
——因此我的包中包含了两个React副本。这意味着使用ES6类的组件试图
扩展一个不存在的
React.Component
(他们得到React的
v0.12.x

我通过查看react在我的
节点\u模块中的拷贝数来诊断此问题:

npm ls | grep react@
这给了我以下的结果:

├── react@0.13.3
│ └── react@0.12.2
grep
-C
选项允许您查看周围的行,因此我重新运行:

npm ls | grep react@0.12.2 -C 5

周围的文字使我能够识别出有问题的软件包。

您是否尝试过更新版本的React?现在是
0.13.1
。谁抛出了错误?react,react路由器,其他javascript代码?您在哪个浏览器中看到错误?是最新版本的Chrome浏览器上的react router。我将react更新为0.13.1,问题就解决了。谢谢你,谢谢你!我还必须将react路由器更改为0.13.3。我有0.14.7,我有这样的路由器issue@Edward:你把react路由器也更新到最新版本了吗?这个该死的东西也解决了我的问题。如果您拼错了“React.Component”,您可能会遇到这个错误。而且它是区分大小写的,所以要注意它。我会放组件而不是组件