app.tsx

修改

views/app.tsx是浏览器端bundle的webpack入口文件,app.tsx可以手动维护,也可以由ko-cola生成。

你可以手动维护这个文件,手动创建Provider和Router,并提供store:

1
2
3
4
5
6
const store = ...
<Provider store={store} key="provider">
<Router history={browserHistory}>
<Route ... />
</Router>
</Provider>

如果要使用服务器端的redux初始化数据,你需要正确的创建store:

1
2
3
4
const { ReduxAsyncConnect, asyncConnect, reducer } = require('koa-cola/client');
// 使用__data 作为redux的初始化数据
const store = createStore(combineReducers(Object.assign({ reduxAsyncConnect: reducer }, ...custom_reducer))
, (window as any).__data);

如果使用koa-cola build来build bundle,那么koa-cola会自动生成app.tsx,所以建议使用koa-cola的生成的方式来维护app.tsx。