使用react-transition-group
报错:
Uncaught Error: React.Children.only expected to receive a single React element child.
报错代码:
import React from 'react'
import { Route, withRouter } from 'react-router-dom'
import Login from './components/login'
import Demo from './components/demo'
import { CSSTransition, TransitionGroup } from 'react-transition-group'
import './App.scss'
export default withRouter(function App(props) {
return (
<TransitionGroup>
<CSSTransition key={props.location.pathname} classNames='wuhu' timeout={2000}>
<Route path='/login' component={Login} />
<Route path='/demo' component={Demo} />
</CSSTransition>
</TransitionGroup>
)
})
报错图片:
原来React.Children 仅应接收单个React元素子级。
只需要再路由外包裹一个标签即可
return (
<TransitionGroup>
<CSSTransition key={props.location.pathname} classNames='wuhu' timeout={2000}>
<>
<Route path='/login' component={Login} />
<Route path='/demo' component={Demo} />
</>
</CSSTransition>
</TransitionGroup>
)