0
我正在使用Django和React。未捕獲的不變違例:_registerComponent(...):目標容器不是DOM元素
我想顯示這個HTML文件:
{% load staticfiles %}
<html>
<head>
<meta charset="utf-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
crossorigin="anonymous">
</script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
rel="stylesheet" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
crossorigin="anonymous">
<link href="{%static "css/rankingStyle.css"%}" rel="stylesheet" type="text/css"/>
<link rel="stylesheet" type="text/css" href="//fonts.googleapis.com/css?family=Raleway" />
<title>Some title</title>
</head>
<body>
<div id="app" />
<script src="{%static "public/bundle.js"%}" type="text/javascript"></script>
</body>
</html>
此文件引用js
文件:<script src="{%static "public/bundle.js"%}" type="text/javascript">
。
的js
文件已經從該陣營文件獲得:
import React from 'react';
import {render} from 'react-dom';
import Criteria from './Criteria.jsx';
import { Button } from 'react-bootstrap';
var App = React.createClass({
getInitialState: function() {
return {showRest: false};
},
toggleShowRest: function() {
this.setState({showRest: !this.state.showRest});
},
render: function() {
return (
<div className="container">
<div className="text-center">
<h1> Title</h1>
<button onClick={this.toggleShowRest} type="button" className="btn btn-primary btn-circle btn-xl">Go</button>
</div>
{this.state.showRest
?
<Criteria />
:
null}
</div>
);
}
});
React.render(<App url="/api/comments"/>, document.getElementById('app'));
在瀏覽器中,我得到這個錯誤:
bundle.js:593 Uncaught Invariant Violation: _registerComponent(...): Target container is not a DOM element.
線593之前,該地區有這樣的內容:
var DOMChildrenOperations = {
dangerouslyReplaceNodeWithMarkup: Danger.dangerouslyReplaceNodeWithMarkup,
到目前爲止,我看了這裏:Invariant Violation: _registerComponent(...): Target container is not a DOM element並嘗試所有的答案。
但他們沒有工作。我認爲這個問題是由Django具體的東西造成的。
請張貼用'ReactDOM.render()'方法調用就行了。 順便說一句'div'不是一個自閉的元素,你應該使用'
'。這可能會導致問題。 – pawel沒有'ReactDOM.render()'方法調用。我正在使用'React.render()'。 – octavian
這是一回事,取決於React版本。你要分享嗎?你有沒有試過關閉div? – pawel