From 990dc887008b4217bb887b704308c91f496dba03 Mon Sep 17 00:00:00 2001 From: "knight.chen" Date: Fri, 30 Sep 2022 11:05:22 +0800 Subject: [PATCH] fix: add id prop in query for script block type --- src/index.ts | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/src/index.ts b/src/index.ts index d7d43700e..7882881e9 100644 --- a/src/index.ts +++ b/src/index.ts @@ -113,12 +113,18 @@ export default function loader( const rawShortFilePath = path .relative(rootContext || process.cwd(), filename) .replace(/^(\.\.[\/\\])+/, '') - const shortFilePath = rawShortFilePath.replace(/\\/g, '/') - const id = hash( - isProduction - ? shortFilePath + '\n' + source.replace(/\r\n/g, '\n') - : shortFilePath - ) + + const getScopeId = () => { + const shortFilePath = rawShortFilePath.replace(/\\/g, '/') + return hash( + isProduction + ? shortFilePath + '\n' + source.replace(/\r\n/g, '\n') + : shortFilePath + ) + } + + const id = + typeof incomingQuery.id === 'string' ? incomingQuery.id : getScopeId() // if the query has a type field, this is a language block request // e.g. foo.vue?type=template&id=xxxxx @@ -154,8 +160,9 @@ export default function loader( const lang = script?.lang || scriptSetup?.lang isTS = !!(lang && /tsx?/.test(lang)) const src = (script && !scriptSetup && script.src) || resourcePath + const idQuery = `&id=${id}` const attrsQuery = attrsToQuery((scriptSetup || script)!.attrs, 'js') - const query = `?vue&type=script${attrsQuery}${resourceQuery}` + const query = `?vue&type=script${idQuery}${attrsQuery}${resourceQuery}` const scriptRequest = stringifyRequest(src + query) scriptImport = `import script from ${scriptRequest}\n` + pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy