本文整理匯總了TypeScript中common/actions.actions.tabsClosed方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript actions.tabsClosed方法的具體用法?TypeScript actions.tabsClosed怎麽用?TypeScript actions.tabsClosed使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類common/actions.actions
的用法示例。
在下文中一共展示了actions.tabsClosed方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: async
watcher.on(actions.closeTab, async (store, action) => {
const { wind, tab } = action.payload;
const rs = store.getState();
if (!hasMultipleTabs(rs, wind)) {
return;
}
let andFocus: string = null;
const nav = rs.winds[wind].navigation;
if (nav.openTabs.length === 1) {
logger.debug(`Closing last tab, replacing it with a new-tab`);
store.dispatch(actions.closeAllTabs({ wind }));
return;
}
if (nav.tab === tab) {
let tabIndex = nav.openTabs.indexOf(tab);
if (tabIndex === -1) {
logger.error(
`${tab} is not in the set of open tabs ${JSON.stringify(
nav.openTabs
)}`
);
return;
}
if (tabIndex + 1 < nav.openTabs.length) {
andFocus = nav.openTabs[tabIndex + 1];
} else if (tabIndex - 1 >= 0) {
andFocus = nav.openTabs[tabIndex - 1];
} else {
logger.error(
`Can't figure out which other tab to focus from ${JSON.stringify(
nav.openTabs
)} after closing ${tab}`
);
return;
}
}
store.dispatch(
actions.tabsClosed({
wind,
tabs: [tab],
andFocus,
})
);
});
示例2: tabReducer
let initialState = (initialURL?: string): TabInstances => ({
["initial-tab"]: tabReducer(
{
history: [{ url: initialURL ? initialURL : "itch://new-tab" }],
currentIndex: 0,
sleepy: true,
sequence: 0,
},
null
),
});
const windOpenedType = actions.windOpened({} as any).type;
const tabsRestoredType = actions.tabsRestored({} as any).type;
const tabOpenedType = actions.tabOpened({} as any).type;
const tabsClosedType = actions.tabsClosed({} as any).type;
const loggedOutType = actions.loggedOut({} as any).type;
export default function(state: TabInstances, action: Action<any>) {
if (typeof state === "undefined") {
return initialState();
}
if (action) {
if (action.type === windOpenedType) {
const {
initialURL,
} = action.payload as typeof actions.windOpened["payload"];
return initialState(initialURL);
}