History库源码分析-parsePath
2023-11-15 11:29:21parsePath(path: string)
返回对象类型: Partial
Path 类型
export interface Path { pathname: string; search: string; hash: string; }
通过解析传入的path,返回一个对象,这个对象包含pathname、search、hash
源码:
export function parsePath(path: string): Partial<Path> {
let parsedPath: Partial<Path> = {};
if (path) {
let hashIndex = path.indexOf("#");
if (hashIndex >= 0) {
// 解析hash
parsedPath.hash = path.substr(hashIndex);
path = path.substr(0, hashIndex);
}
let searchIndex = path.indexOf("?");
if (searchIndex >= 0) {
// 解析查询参数search
parsedPath.search = path.substr(searchIndex);
path = path.substr(0, searchIndex);
}
// pathname
if (path) {
parsedPath.pathname = path;
}
}
return parsedPath;
}