React:Uncaught TypeError:无法读取null

时间:2015-08-14 13:35:58

标签: javascript reactjs

我在React中渲染路线时遇到问题。我看到的只是React对其进行任何渲染之前的页面,以及以下错误。

主要是,我无法弄清楚导致错误的组件/线路,如果有人能提供一些洞察力,我会很感激。感谢。

screenshot

5 个答案:

答案 0 :(得分:1)

确保您在for (auto i = 0; i < MAX_LENGTH; ++i) { std::cout << "words of length " << i << ": " << map[i] << '\n'; } 区块内导入所有使用的组件。

如果您尝试渲染未正确导入或正在返回render() { ... }的组件,则可能会抛出此错误。

如果是这种情况,您可能也会看到相关的错误undefined

我尝试通过以下方式确定导致问题的组件:

  • 用元素
  • 替换简单Uncaught TypeError: inst.render is not a function元素的jsx
  • 如果我找到导致它的元素/组件,我会确保它被扣影,然后深入挖掘。
  • 查看您的差异并恢复代码/存储代码

祝你好运!

答案 1 :(得分:0)

当需要多个React实例时,我遇到了这样的错误。是你的情况吗?

答案 2 :(得分:0)

我经常看到任何组件在其render()方法中放弃未捕获的异常之后。到目前为止,我们发现的解决方案只有刷新页面。

React GitHub问题@JosiahDaniels链接(#4026)讨论了相同的行为:&#34;一些不变的违规现在使React处于不稳定状态,所以这是可以预期的。&#34; - syranide

问题已经结束,因为申请作者有责任不要破坏React的渲染周期。

答案 3 :(得分:0)

您可能忘记导出组件:

var MyComponent = React.createClass({
   ...
});

module.exports = MyComponent;

希望有所帮助。

答案 4 :(得分:0)

React v15添加了一个unstable_handleError函数,该函数可用于帮助解决此类问题。

基本示例:

  unstable_handleError = (error) => {
    console.log(error)
  }

更多信息: https://medium.com/@blairanderson/handle-react-errors-in-v15-4cedaae757d7#.9moxc4d3z