Skip to content

Latest commit

 

History

History
171 lines (129 loc) · 4.15 KB

no-irregular-whitespace.md

File metadata and controls

171 lines (129 loc) · 4.15 KB
pageClass sidebarDepth title description
rule-details
0
vue/no-irregular-whitespace
disallow irregular whitespace

vue/no-irregular-whitespace

disallow irregular whitespace

📖 Rule Details

vue/no-irregular-whitespace rule is aimed at catching invalid whitespace that is not a normal tab and space. Some of these characters may cause issues in modern browsers and others will be a debugging issue to spot. vue/no-irregular-whitespace rule is the similar rule as core no-irregular-whitespace rule but it applies to the source code in .vue.

<template>
  <!-- ✓ GOOD -->
  <div class="foo bar" />
  <!-- ✗ BAD -->
  <div class="foo�bar" />
  <!--           ^ LINE TABULATION (U+000B) -->
</template>
<script>
/* ✓ GOOD */
var foo = bar;
/* ✗ BAD */
var foo =�bar;
//       ^ LINE TABULATION (U+000B)
</script>

🔧 Options

{
    "vue/no-irregular-whitespace": ["error", {
        "skipStrings": true,
        "skipComments": false,
        "skipRegExps": false,
        "skipTemplates": false,
        "skipHTMLAttributeValues": false,
        "skipHTMLTextContents": false
    }]
}
  • skipStrings: if true, allows any whitespace characters in string literals. default true
  • skipComments: if true, allows any whitespace characters in comments. default false
  • skipRegExps: if true, allows any whitespace characters in regular expression literals. default false
  • skipTemplates: if true, allows any whitespace characters in template literals. default false
  • skipHTMLAttributeValues: if true, allows any whitespace characters in HTML attribute values. default false
  • skipHTMLTextContents: if true, allows any whitespace characters in HTML text contents. default false

"skipStrings": true (default)

<script>
/* ✓ GOOD */
var foo = ''
//         ^ LINE TABULATION (U+000B)
</script>

"skipStrings": false

<script>
/* ✗ BAD */
var foo = ''
//         ^ LINE TABULATION (U+000B)
</script>

"skipComments": true

<template>
  <!-- ✓ GOOD -->
  <!-- [�]< LINE TABULATION (U+000B) -->
</template>
<script>
/* ✓ GOOD */
// [�]< LINE TABULATION (U+000B)
/* [�]< LINE TABULATION (U+000B) */
</script>

"skipRegExps": true

<script>
/* ✓ GOOD */
var foo = //
//         ^ LINE TABULATION (U+000B)
</script>

"skipTemplates": true

<script>
/* ✓ GOOD */
var foo = ``
//         ^ LINE TABULATION (U+000B)
</script>

"skipHTMLAttributeValues": true

<template>
  <!-- ✓ GOOD -->
  <div class="foo�bar" />
  <!--           ^ LINE TABULATION (U+000B) -->
</template>

"skipHTMLTextContents": true

<template>
  <!-- ✓ GOOD -->
  <div>�</div>
  <!-- ^ LINE TABULATION (U+000B) -->
</template>

📚 Further Reading

🔍 Implementation

Taken with ❤️ from ESLint core