1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- export default class UrlUtil {
- /**
- * 获取URL参数(字符串)
- * @param url 地址
- * @returns {string}
- */
- private static getParamString(url?: string): string {
- url = url || window.location?.href;
- if (url != void 0) {
- let index = url.indexOf('?');
- if (index != -1) {
- return url.substring(index + 1);
- }
- }
- return null;
- }
- /**
- * 获取URL参数
- * @param url 地址
- * @returns {JSON}
- */
- public static getParam(url?: string): { [key: string]: string } {
- let param = {};
- let paramString = this.getParamString(url);
- if (paramString) {
- paramString.split("&").forEach((value: string) => {
- let values = value.split("=");
- if (values.length == 2) {
- param[values[0]] = values[1];
- }
- });
- }
- return param;
- }
- /**
- * 根据key获取URL参数
- * @param key key
- * @param url 地址
- * @returns {string}
- */
- public static getParamValue(key: string, url?: string): string {
- let paramString = this.getParamString(url);
- if (paramString) {
- let values = paramString.match(`(^|&)${key}=([^&]*)(&|$)`);
- if (values) {
- return values[2];
- }
- }
- return null;
- }
- }
|