を使用した React/Redux アプリがありreact-router-reduxます。Webpack を使用すると、すべて問題ありません。しかし、Bower をhttps://cdnjs.cloudflare.com/ajax/libs/react-router-redux/4.0.5/ReactRouterRedux.js(4.0.5 が最新バージョンで、私はreact-router2.4.1 を持っています) で使用すると、次のエラーが発生します。
history.listen は関数ではありません
ここに私のコードがあります
var syncHistoryWithStore = ReactRouterRedux.syncHistoryWithStore;
var browserHistory = ReactRouter.browserHistory;
var history = syncHistoryWithStore(browserHistory, store);
console.log(history);
ReactDOM.render(
<Provider store={store}>
<Router history={history}>
<Route path="/" component={App}/>
</Router>
</Provider>,
document.getElementById('root')
);
記録する
History > {length: 2, state: Object, scrollRestoration: "auto"}
listenプロパティが欠落していることがわかります。
しかし、 のコードに入るsyncHistoryWithStoreと、返されるオブジェクトは listen を含む多くのプロパティを持つオブジェクトです。
Object { v2_compatible : true, ..., listen}
Objectそのため、何らかの形でSymbol( ) に変換されているように見えますが、そのHistory理由と方法はわかりません。