"[email protected]"및 "[email protected]"을 사용하고 있습니다. ES5에서의 반응 라우팅
나는이 최소한의 예를 가지고 있고 나는 그것이 작동 할 수 없습니다 :var React = require('react');
var ReactDOM = require('react-dom');
var Router = require('react-router');
var Route = Router.Route;
var Test = React.createClass({
render: function() {
return <h1>Test</h1>;
}
});
ReactDOM.render(
<Router>
<Route path="/" component={Test}/>
</Router>,
document.getElementById('app')
);
나는 ReactDOM.render(<Test/>, ...)
잘 작동하기 때문에 <Test/>
은 OK입니다 것을 알고있다.
꿀꺽 그것을 컴파일하지만 페이지가 표시되지 않고 콘솔은 말한다 :
Uncaught Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.
at invariant (bundle.js:41330)
at ReactCompositeComponentWrapper.instantiateReactComponent [as _instantiateReactComponent] (bundle.js:39575)
at ReactCompositeComponentWrapper.performInitialMount (bundle.js:28233)
at ReactCompositeComponentWrapper.mountComponent (bundle.js:28160)
at ReactCompositeComponentWrapper.wrapper [as mountComponent] (bundle.js:35008)
at Object.mountComponent (bundle.js:35674)
at mountComponentIntoNode (bundle.js:33795)
at ReactReconcileTransaction.perform (bundle.js:38439)
at batchedMountComponentIntoNode (bundle.js:33816)
at ReactDefaultBatchingStrategyTransaction.perform (bundle.js:38439)
편집 :
<!DOCTYPE html>
<html lang="en">
<head>
<title>My Page</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="css/bundle.css" />
<link rel="shortcut icon" type="image/x-icon" href="favicon.ico"/>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
</head>
<body>
<!--ALL REACT CODE-->
<div id="app"></div>
<!--ALL REACT CODE-->
<script src="scripts/bundle.js"></script>
</body>
</html>
간단한 데모 https://codepen.io/pshrmn/pen/YZXZqM – zloctb