0

我正在使用此代码创建路由 redux 路由器

import React from 'react'
import ReactDOM from 'react-dom'
import { createStore, combineReducers } from 'redux'
import { Provider } from 'react-redux'
import { Router, Route, browserHistory } from 'react-router'
import { syncHistoryWithStore, routerReducer } from 'react-router-redux'
import Calendar from '../calendar/calendar'
import Cards from '../cards/cards'

const history = syncHistoryWithStore(browserHistory)
const App= () => {
return <div>
    <h2>start</h2>
    <a href="/calendar">calendar</a>
    <a href="/cards">cards</a>
</div>
}

const store = createStore(
 combineReducers({
   routing: routerReducer
 })
)


ReactDOM.render(
<Provider store={store}>
{ /* Tell the Router to use our enhanced history */ }
<Router history={history}>
  <Route path="/" component={App}>
    <Route path="calendar" component={Calendar}/>
    <Route path="cards" component={Cards}/>
  </Route>
</Router>
</Provider>,
document.getElementById('mount')
)

我收到此错误

“未捕获的类型错误:无法读取未定义的属性‘getState’”

我正在尝试在应用程序 redux 上实现路由器 redux 谢谢

卡洛斯·维埃拉

4

1 回答 1

0

从您提供的代码中,很难准确判断您的问题是什么,但是如果您尝试使用React-Router,您可能希望首先更改链接以反映其使用情况。

尝试更换:

<a href="/calendar">calendar</a>
<a href="/cards">cards</a>

有了这个:

<Link to="/calendar">calender</Link>
<Link to="/cards">cards</Link>

并从 React-Router 导入链接,将其放在文件顶部:

import { Router, Route, browserHistory, Link } from 'react-router'

如果这对解决您的问题没有任何帮助,并且您在尝试初始化的位置发布state并且可能还尝试向setState您发布有关该错误的更多帮助。

于 2016-09-03T10:56:34.260 回答