本文整理匯總了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