throw error for missing attribute value

pull/6612/head
Tan Li Hau 5 years ago
parent d1d999b558
commit 7756f4b9b2

@ -157,6 +157,10 @@ export default {
code: 'missing-component-definition', code: 'missing-component-definition',
message: '<svelte:component> must have a \'this\' attribute' message: '<svelte:component> must have a \'this\' attribute'
}, },
missing_attribute_value: {
code: 'missing-attribute-value',
message: 'Expected value for the attribute'
},
unclosed_script: { unclosed_script: {
code: 'unclosed-script', code: 'unclosed-script',
message: '<script> must have a closing tag' message: '<script> must have a closing tag'

@ -454,6 +454,10 @@ function read_attribute_value(parser: Parser) {
throw error; throw error;
} }
if (value.length === 0 && !quote_mark) {
parser.error(parser_errors.missing_attribute_value);
}
if (quote_mark) parser.index += 1; if (quote_mark) parser.index += 1;
return value; return value;
} }

@ -0,0 +1,10 @@
{
"code": "missing-attribute-value",
"message": "Expected value for the attribute",
"pos": 12,
"start": {
"character": 12,
"column": 12,
"line": 1
}
}

@ -0,0 +1 @@
<div a="" b={''} c='' d="{''}" ></div>

@ -0,0 +1,108 @@
{
"html": {
"start": 0,
"end": 38,
"type": "Fragment",
"children": [
{
"start": 0,
"end": 38,
"type": "Element",
"name": "div",
"attributes": [
{
"start": 5,
"end": 9,
"type": "Attribute",
"name": "a",
"value": [
{
"start": 8,
"end": 8,
"type": "Text",
"raw": "",
"data": ""
}
]
},
{
"start": 10,
"end": 16,
"type": "Attribute",
"name": "b",
"value": [
{
"start": 12,
"end": 16,
"type": "MustacheTag",
"expression": {
"type": "Literal",
"start": 13,
"end": 15,
"loc": {
"start": {
"line": 1,
"column": 13
},
"end": {
"line": 1,
"column": 15
}
},
"value": "",
"raw": "''"
}
}
]
},
{
"start": 17,
"end": 21,
"type": "Attribute",
"name": "c",
"value": [
{
"start": 20,
"end": 20,
"type": "Text",
"raw": "",
"data": ""
}
]
},
{
"start": 22,
"end": 30,
"type": "Attribute",
"name": "d",
"value": [
{
"start": 25,
"end": 29,
"type": "MustacheTag",
"expression": {
"type": "Literal",
"start": 26,
"end": 28,
"loc": {
"start": {
"line": 1,
"column": 26
},
"end": {
"line": 1,
"column": 28
}
},
"value": "",
"raw": "''"
}
}
]
}
],
"children": []
}
]
}
}
Loading…
Cancel
Save