UNPKG

cuz

Version:

Front-end modular development kit.

73 lines (65 loc) 2.94 kB
import 'babel-core/polyfill'; import './index.css'; import React from 'react'; import ReactDOM from 'react-dom'; import createStore from './store'; import App from './App'; import themeCreate from './cuz-theme'; import { combineReducers } from 'redux'; import { default as _cuz } from './redux-loading-reducer'; export default function(reducers, routes, options = {}) { if (typeof reducers === 'function') { console.error(`cuz: 异步 action 中已移除 readyState 字段, 请删除相应 reducer 中对 readyState === 'success' 的判断.`); console.error('cuz: reducers 已修改为直接传递 Object 即可, 不需再使用 combineReducers 进行包装. 请移除 RootReduces 中的 combineReducers.'); return; } const store = createStore(combineReducers({ _cuz, ...reducers }), options); if (process.env.NODE_ENV === 'development' && module.hot) { const basedir = process.cwd(); module.hot.accept(basedir + '/app/reducers', () => { const newReducers = require(basedir + '/app/reducers'); store.replaceReducer(newReducers); }); } ReactDOM.render( <App routes={routes()} store={store} theme={themeCreate(options.theme)} />, document.getElementById('root') ); } export * from './utils'; // TODO 临时导出所有组件用于方便编写文档. export * from 'react-bootstrap'; export { Grid, Row, Col } from './components/Grid'; export Button from './components/Button'; export ButtonGroup from './components/ButtonGroup'; export ButtonToolbar from './components/ButtonToolbar'; export Input from './components/Input'; export Checkbox from './components/Checkbox'; export Radio from './components/Radio'; export SearchGroup from './components/SearchGroup'; export NumberInput from './components/NumberInput'; export RadioGroup from './components/RadioGroup'; export CheckboxGroup from './components/CheckboxGroup'; export { Breadcrumb, BreadcrumbItem } from './components/Breadcrumb'; export Label from './components/Label'; export { Tabs, Tab } from './components/Tabs'; export Alert from './components/Alert'; export { Tooltip, OverlayTrigger } from './components/Tooltips'; export Box from './components/Box'; export Pagination from './components/Pagination'; export { Table, Column, ColumnGroup, Cell } from './components/Table'; export PageSize from './components/PageSize'; export PageTo from './components/PageTo'; export Modal from './components/Modal'; export Select from './components/Select'; export { Carousel, CarouselItem } from './components/Carousel'; export { Code } from './components/Code'; export { Category, CategoryGroup, CategoryItem } from './components/Category'; export Calendar from './components/Calendar'; export IndexGroup from './components/IndexGroup'; export { Steps, Step } from './components/Steps'; export { DropdownButton, SplitButton, MenuItem } from './components/Dropdown'; export { Upload } from './components/Upload';