mirror of https://github.com/sveltejs/svelte
Merge branch 'master' of https://github.com/asweingarten/svelte into asweingarten-master
commit
25a18ab495
@ -0,0 +1,21 @@
|
|||||||
|
import { Validator } from '../../';
|
||||||
|
import { Node } from '../../../interfaces';
|
||||||
|
import getName from '../../../utils/getName';
|
||||||
|
import { parse } from 'acorn';
|
||||||
|
|
||||||
|
export default function checkForValidIdentifiers(
|
||||||
|
validator: Validator,
|
||||||
|
properties: Node[]
|
||||||
|
) {
|
||||||
|
properties.forEach(prop => {
|
||||||
|
const name = getName(prop.key);
|
||||||
|
const functionDefinitionString = `function ${name}() {}`;
|
||||||
|
try {
|
||||||
|
parse(functionDefinitionString);
|
||||||
|
} catch(exception) {
|
||||||
|
const invalidCharacter = functionDefinitionString[exception.pos]
|
||||||
|
validator.error(`Computed property name "${name}" is invalid. Character '${invalidCharacter}' at position ${exception.pos} is illegal in function identifiers`, prop.start);
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
}
|
@ -0,0 +1,8 @@
|
|||||||
|
[{
|
||||||
|
"message": "Computed property name \"hours-hyphen\" is invalid. Character '-' at position 14 is illegal in function identifiers",
|
||||||
|
"loc": {
|
||||||
|
"line": 14,
|
||||||
|
"column": 6
|
||||||
|
},
|
||||||
|
"pos": 172
|
||||||
|
}]
|
@ -0,0 +1,17 @@
|
|||||||
|
<p>
|
||||||
|
The hour is
|
||||||
|
<strong>{{hours}}</strong>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
time: new Date()
|
||||||
|
};
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
"hours-hyphen": time => time.getHours()
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
Loading…
Reference in new issue