小程序 判断是h5链接,还是小程序内部链接, 跳转方法封装

是否是h5链接
// 是否是h5链接
    isH5Link(value) {
        const urlReg = /(http|https):\/\/([\w.]+\/?)\S*/;
        return urlReg.test(value);
    },
是否是小程序内页面链接
// 是否是小程序内页面链接
    isMiniPageLink(value) {
        if (value.substr(0, 4) === 'page' || value.substr(0, 5) === '/page') {
            return true;
        }
        return false;
    },
页面跳转,支持小程序内页面和h5链接
// 页面跳转,支持小程序内页面和h5链接
    pageJump(linkUrl) {
        if (!linkUrl) {
            return ;
        }
        // 调用本页面的其他方法
        if (utils.isH5Link(linkUrl)) {
            uni.navigateTo({ // 在本js内可以直接调用uni.navigateTo
                url: '../webView/webView?froms='+ encodeURIComponent(linkUrl)
            });
        } else if (utils.isMiniPageLink(linkUrl)) {
            let hyperlink = '';
            // 如果不是以/开头,前端补/
            if (linkUrl.substr(0, 1) === 'p') {
                hyperlink = '/' + linkUrl;
            } else {
                hyperlink = linkUrl;
            }
            uni.navigateTo({
                url: hyperlink
            })
        }
    }

看了这么久,累了吧,关注一下吧

image.png

你可能感兴趣的:(小程序 判断是h5链接,还是小程序内部链接, 跳转方法封装)