如何才能正确地渲染此组件?

时间:2015-03-20 17:18:39

标签: javascript reactjs

我有一个定义的组件,Pragmatometer,我试图渲染div#main:

        React.render(React.createElement(Pragmatometer,
          {}), document.getElementById('main'));

Chrome的JavaScript控制台显示,ReactJS的行数为数千:

Uncaught Error: Invariant Violation: _registerComponent(...): Target container is not a DOM element.

我的HTML是:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>Pragmatometer</title>
    <style type="text/css">
        body
            {
            font-family: Verdana, Arial, sans;
            }
    </style>
</head>
<body>
    <h1>Pragmatometer</h1>
    <div id="main"></div>
    <script src="//cdnjs.cloudflare.com/ajax/libs/react/0.12.2/react.js">
    </script>
    <script
      src="//cdnjs.cloudflare.com/ajax/libs/showdown/0.3.1/showdown.min.js">
    </script>

    <script src="/js/site.js"></script>
</body>
</html>

是React.render()调用中的错误,还是有关Pragmatometer组件的问题?这类问题的常见嫌疑人是什么?

谢谢,

2 个答案:

答案 0 :(得分:1)

渲染现在通过ReactDOM.render()

完成
list1='field1','field2','field3'

答案 1 :(得分:0)

这有效

React.render(
      React.createElement('Pragmatometer',
          null, 'Hello'),
        document.getElementById('main')
      );

如果你想使用没有单引号的实用计量器&#39;&#39;你应该把它设置为abd我想知道为什么你不使用jsx它很容易编写组件。