Skip to content

Commit 9dc816d

Browse files
authored
fix(compiler-sfc): compiler blank srcset (#3005)
fix vitejs/vite#1523
1 parent ffd5288 commit 9dc816d

File tree

3 files changed

+14
-1
lines changed

3 files changed

+14
-1
lines changed

packages/compiler-sfc/__tests__/__snapshots__/templateTransformSrcset.spec.ts.snap

+12
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,10 @@ const _hoisted_8 = \\"/logo.png\\" + ', ' + _imports_0 + '2x'
1616
1717
export function render(_ctx, _cache) {
1818
return (_openBlock(), _createBlock(_Fragment, null, [
19+
_createVNode(\\"img\\", {
20+
src: \\"./logo.png\\",
21+
srcset: \\"\\"
22+
}),
1923
_createVNode(\\"img\\", {
2024
src: \\"./logo.png\\",
2125
srcset: _hoisted_1
@@ -69,6 +73,10 @@ exports[`compiler sfc: transform srcset transform srcset w/ base 1`] = `
6973
7074
export function render(_ctx, _cache) {
7175
return (_openBlock(), _createBlock(_Fragment, null, [
76+
_createVNode(\\"img\\", {
77+
src: \\"./logo.png\\",
78+
srcset: \\"\\"
79+
}),
7280
_createVNode(\\"img\\", {
7381
src: \\"./logo.png\\",
7482
srcset: \\"/foo/logo.png\\"
@@ -137,6 +145,10 @@ const _hoisted_11 = \\"data:image/png;base64,i\\" + '1x, ' + \\"data:image/png;b
137145
138146
export function render(_ctx, _cache) {
139147
return (_openBlock(), _createBlock(_Fragment, null, [
148+
_createVNode(\\"img\\", {
149+
src: \\"./logo.png\\",
150+
srcset: \\"\\"
151+
}),
140152
_createVNode(\\"img\\", {
141153
src: \\"./logo.png\\",
142154
srcset: _hoisted_1

packages/compiler-sfc/__tests__/templateTransformSrcset.spec.ts

+1
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ function compileWithSrcset(template: string, options?: AssetURLOptions) {
2525
}
2626

2727
const src = `
28+
<img src="./logo.png" srcset=""/>
2829
<img src="./logo.png" srcset="./logo.png"/>
2930
<img src="./logo.png" srcset="./logo.png 2x"/>
3031
<img src="./logo.png" srcset="./logo.png 2x"/>

packages/compiler-sfc/src/templateTransformSrcset.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ export const transformSrcset: NodeTransform = (
4646
if (attr.name === 'srcset' && attr.type === NodeTypes.ATTRIBUTE) {
4747
if (!attr.value) return
4848
const value = attr.value.content
49-
49+
if (!value) return
5050
const imageCandidates: ImageCandidate[] = value.split(',').map(s => {
5151
// The attribute value arrives here with all whitespace, except
5252
// normal spaces, represented by escape sequences

0 commit comments

Comments
 (0)