Skip to content

Files

Latest commit

 

History

History
44 lines (31 loc) · 1.46 KB

experimental-require-strict-events.md

File metadata and controls

44 lines (31 loc) · 1.46 KB

Pattern: Missing use of strictEvents on <script> tag

Issue: -

Description

This rule enforces the presence of the strictEvents attribute on the main <script> tag of all components. This attributes enforces type-checking of events dispatched by the component, e.g. making it a typescript error to listen to any non-existent events. Alternatively, the event types may be defined manually by declaring the $$Events interface.

The strictEvents attribute and the $$Events interface are experimental and are documented in svelte RFC #38.

<!-- ✓ GOOD -->
<script lang="ts" strictEvents>
  /* eslint svelte/experimental-require-strict-events: "error" */
</script>
<!-- ✓ GOOD -->
<script lang="ts">
  /* eslint svelte/experimental-require-strict-events: "error" */
  interface $$Events {}
</script>
<!-- ✗ BAD -->
<script lang="ts">
  /* eslint svelte/experimental-require-strict-events: "error" */
</script>

🔧 Options

Nothing.

🚀 Version

This rule was introduced in eslint-plugin-svelte v2.18.0

🔍 Implementation