admin管理员组文章数量:1208155
I am getting this error while implementing the react-routing
here is my code
Error
react.min.js:16 Uncaught Error: Minified React error #130; visit .html?invariant=130&args[]=object&args[]= for the full message or use the non-minified dev environment for full errors and additional helpful warnings.
at r (react.min.js:16)
at p.a [as _instantiateReactComponent] (react.min.js:16)
at performInitialMount (react.min.js:13)
at p.mountComponent (react.min.js:13)
at Object.mountComponent (react.min.js:15)
at i (react.min.js:14)
at r.perform (react.min.js:16)
at s (react.min.js:14)
at r.perform (react.min.js:16)
at Object.batchedUpdates (react.min.js:14)
Could you please tell me why it is showing this error
var Router = ReactRouter;
var DefaultRoute = Router.DefaultRoute;
var Link = Router.Link;
var Route = Router.Route;
var browserHistory = Router.browserHistory;
var RouteHandler = Router.RouteHandler;
class First extends React.Component {
render() {
return <h1>Hello word</h1>;
}
}
class Second extends React.Component {
render() {
return <h1>Second</h1>;
}
}
ReactDOM.render( <Router history={browserHistory}>
<Route path="/" component={First}/>
</Router>,document.getElementById('root')
)
I am getting this error while implementing the react-routing
here is my code
http://codepen.io/anon/pen/VmOgyy?editors=1010
Error
react.min.js:16 Uncaught Error: Minified React error #130; visit http://facebook.github.io/react/docs/error-decoder.html?invariant=130&args[]=object&args[]= for the full message or use the non-minified dev environment for full errors and additional helpful warnings.
at r (react.min.js:16)
at p.a [as _instantiateReactComponent] (react.min.js:16)
at performInitialMount (react.min.js:13)
at p.mountComponent (react.min.js:13)
at Object.mountComponent (react.min.js:15)
at i (react.min.js:14)
at r.perform (react.min.js:16)
at s (react.min.js:14)
at r.perform (react.min.js:16)
at Object.batchedUpdates (react.min.js:14)
Could you please tell me why it is showing this error
var Router = ReactRouter;
var DefaultRoute = Router.DefaultRoute;
var Link = Router.Link;
var Route = Router.Route;
var browserHistory = Router.browserHistory;
var RouteHandler = Router.RouteHandler;
class First extends React.Component {
render() {
return <h1>Hello word</h1>;
}
}
class Second extends React.Component {
render() {
return <h1>Second</h1>;
}
}
ReactDOM.render( <Router history={browserHistory}>
<Route path="/" component={First}/>
</Router>,document.getElementById('root')
)
Share
Improve this question
edited Dec 28, 2016 at 9:03
suman j
6,96012 gold badges61 silver badges117 bronze badges
asked Dec 26, 2016 at 5:06
user944513user944513
12.7k51 gold badges185 silver badges346 bronze badges
0
5 Answers
Reset to default 6Well the error occurs because of the conflict between the development and production environment
versions of your modules. The react-router
instance that you are using in your codepen is a development version
and contains the full error messages. And as the React Docs say
In the minified production build of React, we avoid sending down full error messages in order to reduce the number of bytes sent over the wire.
We highly recommend using the development build locally when debugging your app since
To solve the error, use the non-minified
version of react and react-dom
https://cdnjs.cloudflare.com/ajax/libs/react/15.3.1/react.js
and
https://cdnjs.cloudflare.com/ajax/libs/react/15.3.1/react-dom.js
After switching to non minified version of react you will see actual error:
Uncaught Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: undefined.
And it's happens because you are using ReactRouter v4.0 which has different API
In v4 there is no Router
or Routes
components.. Instead you use BrowserRouter
and Match
components. In your case code would look like this:
const {
BrowserRouter,
Match,
Link
} = ReactRouter
class First extends React.Component {
render() {
return <h1>Hello word!</h1>;
}
}
class Second extends React.Component {
render() {
return <h1>Second</h1>;
}
}
ReactDOM.render(
<BrowserRouter>
<div>
<Link to='/'>First</Link>
<Link to='/second'>Second</Link>
<Match exactly pattern="/" component={First} />
<Match pattern="/second" component={Second} />
</div>
</BrowserRouter>, document.getElementById('root')
)
Documentation for react-router v4: https://react-router.now.sh/basic
To solve this error, you can use non-minified versions of react and react-dom
Please execute the code below:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>React Router Bug Report</title>
<script src="https://npmcdn.com/[email protected]/dist/react.js" charset="utf-8"></script>
<script src="https://npmcdn.com/[email protected]/dist/react-dom.js" charset="utf-8"></script>
<script src="https://npmcdn.com/[email protected]/umd/ReactRouter.js" charset="utf-8"></script>
</head>
<body>
<div id="app"></div>
</body>
</html>
Jscode----
const {
Router,
Route,
IndexRoute,
Redirect,
Link,
browserHistory,
IndexLink
} = ReactRouter
class First extends React.Component {
constructor(){
super();
this.state = {
username: "",
}
// click hander
this.handleClick = this.handleClick.bind(this);
this.onChangeHandler = this.onChangeHandler.bind(this);
}
handleClick(e){
//alert(this.state.username)
}
onChangeHandler (e){
console.log(e.target.value);
this.setState({
username :e.target.value
})
}
render() {
return (
<div>
<h1>First</h1>
<input type="text" onChange={this.onChangeHandler}/>
{this.state.username}
<Link to="/second" ><button onClick={this.handleClick}>send data</button></Link>
</div>
);
}
}
class Second extends React.Component {
render() {
return (
<h1>Second</h1>
);
}
}
ReactDOM.render((
<Router>
<Route path="/" component={First}/>
<Route path="/second" component={Second}/>
</Router>
), document.getElementById('app'))
This error occurs because of a conflict between the development and production environment versions of your modules. The instance you are using in your code is a development version and contains the full error messages. To solve this error, you can use non-minified version of react and react-dom
This happens because you are using ReactRouter v4.0 which has different API
本文标签: javascriptMinified React error in react while navigation one component to antherStack Overflow
版权声明:本文标题:javascript - Minified React error in react while navigation one component to anther - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1738681983a2106607.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论