本文整理汇总了TypeScript中redux-first-router.connectRoutes函数的典型用法代码示例。如果您正苦于以下问题:TypeScript connectRoutes函数的具体用法?TypeScript connectRoutes怎么用?TypeScript connectRoutes使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了connectRoutes函数的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: connectRoutes
import { History } from 'history';
declare var console: any;
declare var history: History;
type State = LocationState;
type StoreCreator = StoreEnhancerStoreCreator<State>;
const routesMap = {
HOME: '/'
};
const {
reducer,
middleware,
enhancer
} = connectRoutes(history, routesMap);
const dumbMiddleware: Middleware = (store: MiddlewareAPI<LocationState>) => (next: Dispatch<LocationState>) => (action: Action) => {
next(action);
};
const composedMiddleware = applyMiddleware(middleware, dumbMiddleware);
const storeEnhancer = compose<StoreCreator, StoreCreator, StoreCreator>(enhancer, composedMiddleware);
const store = createStore(reducer, storeEnhancer);
// $ExpectType Store<LocationState>
store;
示例2: connectRoutes
declare var history: History;
type State = LocationState;
type StoreCreator = StoreEnhancerStoreCreator<State>;
const routesMap = {
HOME: '/'
};
const {
reducer,
middleware,
enhancer,
initialDispatch
} = connectRoutes(history, routesMap, {
initialDispatch: false
});
const dumbMiddleware: Middleware = store => next => action => next(action);
const composedMiddleware = applyMiddleware(middleware, dumbMiddleware);
const storeEnhancer = compose<StoreCreator, StoreCreator, StoreCreator>(enhancer, composedMiddleware);
const store = createStore(reducer, storeEnhancer);
const receivedAction: ReceivedAction = {
type: 'HOME',
payload: {}
};
actionToPath(receivedAction, routesMap); // $ExpectType string
示例3: connectRoutes
const { reducer, middleware, enhancer, initialDispatch, thunk } = connectRoutes(routesMap, {
basename: '/base',
strict: false,
location: state => {
const locationState = state.location; // $ExpectType LocationState<Keys, State>
return locationState;
},
title: state => {
const title = state.location.pathname; // $ExpectType string
return title;
},
initialDispatch: false,
initialEntries: [],
querySerializer: {
stringify: queryString => {
queryString; // $ExpectType object
return '';
},
parse: params => {
params; // $ExpectType string
return {};
}
},
notFoundPath: 'not-found',
scrollTop: true,
restoreScroll: (history: History) => {
return {};
},
onBeforeChange: (dispatch: Dispatch, getState: StateGetter<State>, bag: Bag) => { },
onAfterChange: (dispatch: Dispatch, getState: StateGetter<State>, bag: Bag) => { },
onBackNext: (dispatch: Dispatch, getState: StateGetter<State>, bag: Bag) => { },
displayConfirmLeave: (message: string, callback: (unblock: boolean) => void) => { },
createHistory: (options?: any) => history
});
示例4: connectRoutes
};
const {
reducer,
middleware,
enhancer,
initialDispatch,
thunk,
} = connectRoutes(history, routesMap, {
initialDispatch: false,
onBeforeChange: (dispatch, getState) => {
dispatch; // $ExpectType Dispatch<any>
getState; // $ExpectType StateGetter<State>
},
location: state => {
const locationState = state.location; // $ExpectType LocationState<Keys, State>
return locationState;
},
title: state => {
const title = state.location.pathname; // $ExpectType string
return title;
}
});
const dumbMiddleware: Middleware = store => next => action => next(action);
const composedMiddleware = applyMiddleware(middleware, dumbMiddleware);
const storeEnhancer = compose<StoreCreator, StoreCreator, StoreCreator>(
enhancer,
composedMiddleware