diff --git a/lib/rules/no-multi-spaces.js b/lib/rules/no-multi-spaces.js
index c9d6369f4..2ba0baa4d 100644
--- a/lib/rules/no-multi-spaces.js
+++ b/lib/rules/no-multi-spaces.js
@@ -37,6 +37,9 @@ module.exports = {
})
return
}
+ if (!node.templateBody) {
+ return
+ }
const sourceCode = context.getSourceCode()
const tokenStore = context.parserServices.getTemplateBodyTokenStore()
const tokens = tokenStore.getTokens(node.templateBody, { includeComments: true })
diff --git a/tests/lib/rules/no-multi-spaces.js b/tests/lib/rules/no-multi-spaces.js
index afb93cf07..5238db724 100644
--- a/tests/lib/rules/no-multi-spaces.js
+++ b/tests/lib/rules/no-multi-spaces.js
@@ -17,7 +17,7 @@ const RuleTester = require('eslint').RuleTester
const ruleTester = new RuleTester({
parser: 'vue-eslint-parser',
- parserOptions: { ecmaVersion: 2015 }
+ parserOptions: { ecmaVersion: 2015, sourceType: 'module' }
})
ruleTester.run('no-multi-spaces', rule, {
@@ -40,7 +40,11 @@ ruleTester.run('no-multi-spaces', rule, {
'{{ i }}
',
'{{ i }}
',
' {{ a }}
',
- ' \n {{ a }}
'
+ ' \n {{ a }}
',
+ {
+ filename: 'test.js',
+ code: 'export default { }'
+ }
],
invalid: [
{