本文整理汇总了TypeScript中history.History.replace方法的典型用法代码示例。如果您正苦于以下问题:TypeScript History.replace方法的具体用法?TypeScript History.replace怎么用?TypeScript History.replace使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类history.History
的用法示例。
在下文中一共展示了History.replace方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: push
push(path: string | LocationDescriptorObject, state?: any) {
// Do not navigate if the path object matches
const nextPath = typeof path === 'string' ? path : createPath(path);
if (nextPath === createPath(this.history.location)) return;
if (Date.now() - this.lastPush > this.wait) {
// @ts-ignore TypeScript doesn't recognize our push as a proxy for History.push's
// overloaded signature, and it's really hard to fix this properly
this.history.push(path, state);
} else {
try {
// @ts-ignore
this.history.replace(path, state);
} catch (e) {
// Ignore Safari's history.replaceState() rate limit error.
// See https://github.com/nusmodifications/nusmods/issues/763
if (
e.name === 'SecurityError' &&
e.message.includes('Attempt to use history.replaceState()')
) {
return;
}
// Continue throwing all other errors
throw e;
}
}
this.lastPush = Date.now();
}
示例2: return
return (key: string, value?) => {
if (value === "") {
delete querystring[key];
} else {
querystring[key] = value || key;
}
history.replace("?" + stringifyQs(querystring));
};
示例3: call
return function call(input: Narrow<HistoryInput>): void {
if (input.type === 'push') {
history.push(input.pathname, input.state);
}
if (input.type === 'replace') {
history.replace(input.pathname, input.state);
}
if (input.type === 'go') {
history.go(input.amount);
}
if (input.type === 'goBack') {
history.goBack();
}
if (input.type === 'goForward') {
history.goForward();
}
};
示例4: createBrowserHistory
let history: History<{some: 'state'}> = createBrowserHistory();
// Listen for changes to the current location. The
// listener is called once immediately.
let unlisten = history.listen(function (location) {
console.log(location.pathname);
});
// When you're finished, stop the listener.
unlisten();
// Push a new entry onto the history stack.
history.push('/home');
// Replace the current entry on the history stack.
history.replace('/profile');
// Push a new entry with state onto the history stack.
history.push({
pathname: '/about',
search: '?the=search',
state: { some: 'state' }
});
// Change just the search on an existing location.
history.push({ pathname: location.pathname, search: '?the=other+search' });
// Go back to the previous history entry. The following
// two lines are synonymous.
history.go(-1);
history.goBack();
示例5: useEffect
useEffect(() => {
if (redirectLocation) {
history.replace(redirectLocation);
}
});