/** * 整页跳转用的应用内地址(hash 路由)。 * * 线上缺陷(FL上线独立验收报告 P1-3):入口把 `router.resolve(...).href`(自带前导 `#`)当成 * path 再拼一次,得到 `index.html#/task/339#/diagram?…` 双 hash——浏览器只认第一个 `#`, * 页面停在原路由且无任何报错;另一处用 `origin + BASE_URL` 拼基址,BASE_URL 构建期是 "./", * 拼出 `https://host./#/diagram?…`(域名尾点)。 * 统一口径:先丢掉当前地址里已有的 hash 段,再接上目标路由解析出的唯一 hash。 */ export function toAppHashUrl(hashHref: string, currentHref: string = window.location.href): string { const hash = hashHref.startsWith("#") ? hashHref : `#${hashHref}`; return `${currentHref.split("#")[0]}${hash}`; }