Merge pull request #4189 from lovelyCARDINAL/patch-0

feat: add url-params-cleaner for bilibili-mall
This commit is contained in:
Grant Howard 2023-05-10 20:14:08 +08:00 committed by GitHub
commit 726089d2a3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -49,6 +49,11 @@ const entry = async () => {
'vd_source', 'vd_source',
'is_story_h5', 'is_story_h5',
'buvid', 'buvid',
'goFrom',
'jumpLinkType',
'hasBack',
'noTitleBar',
'msource',
] ]
const [blockParams] = registerAndGetData('urlParamsClean.params', builtInBlockParams) const [blockParams] = registerAndGetData('urlParamsClean.params', builtInBlockParams)
const builtInSiteSpecifiedParams = [ const builtInSiteSpecifiedParams = [
@ -72,6 +77,10 @@ const entry = async () => {
match: /\/\/www\.bilibili\.com\/video\//, match: /\/\/www\.bilibili\.com\/video\//,
param: 'up_id', param: 'up_id',
}, },
{
match: /\/\/mall\.bilibili\.com\//,
param: 'noReffer',
},
] ]
const [siteSpecifiedParams] = registerAndGetData( const [siteSpecifiedParams] = registerAndGetData(
'urlParamsClean.siteSpecifiedParams', 'urlParamsClean.siteSpecifiedParams',
@ -81,7 +90,9 @@ const entry = async () => {
const [tailingSlash] = registerAndGetData('urlParamsClean.tailingSlash', builtInTailingSlash) const [tailingSlash] = registerAndGetData('urlParamsClean.tailingSlash', builtInTailingSlash)
const clean = () => { const clean = () => {
const urlParams = window.location.search.substring(1).split('&') const urlParams = [...new URLSearchParams(window.location.search).entries()].map(
([key, value]) => `${key}=${value},`,
)
if (urlParams.some(param => noClean.some(it => param.includes(it)))) { if (urlParams.some(param => noClean.some(it => param.includes(it)))) {
return return
} }
@ -124,7 +135,7 @@ export const component = defineComponentMetadata({
entry, entry,
description: { description: {
'zh-CN': 'zh-CN':
'自动删除网址中的多余跟踪参数. 请注意这会导致浏览器历史记录出现重复的标题 (分别是转换前后的网址), 并可能导致后退要多退几次.', '自动删除网址中的多余跟踪参数。请注意这会导致浏览器历史记录出现重复的标题(分别是转换前后的网址),并可能导致后退要多退几次。',
}, },
tags: [componentsTags.utils], tags: [componentsTags.utils],
urlExclude: [/game\.bilibili\.com\/fgo/, /live\.bilibili\.com\/p\/html\/live-app-hotrank\//], urlExclude: [/game\.bilibili\.com\/fgo/, /live\.bilibili\.com\/p\/html\/live-app-hotrank\//],