test02/node_modules/@vuepress/theme-default/lib/client/composables/useNavigate.js
罗佳鸿 6aa1ebe342
Some checks are pending
部署文档 / deploy-gh-pages (push) Waiting to run
first commit
2024-08-13 10:11:19 +08:00

23 lines
688 B
JavaScript

import { isLinkAbsolute, isLinkWithProtocol } from '@vuepress/helper/client';
import { useRoute, useRouter } from 'vuepress/client';
export const useNavigate = () => {
const router = useRouter();
const route = useRoute();
return (url) => {
if (url)
if (isLinkAbsolute(url)) {
// Inner absolute path
if (route.path !== url)
router.push(url);
}
else if (isLinkWithProtocol(url)) {
// external url
window?.open(url);
}
else {
// relative url
router.push(encodeURI(url));
}
};
};