·
0 min read

Vue Tip: Detailed Prop Definitions

MH

Michael Hoffmann

@mokkapps

Vue Tip: Detailed Prop Definitions Image

Your Vue prop definitions should always be as detailed as possible, specifying at least type(s):

<script>
props: {
  status: {
    type: String,
    required: true,
    validator: value => { return [ 'syncing', 'synced', 'version-conflict', 'error' ].includes(value) }
  }
}
</script>
<script>
props: {
  status: String
}
</script>

This has two advantages:

  • API documentation: It's easy to see how the component will be used.
  • Development Warnings: In development mode, you will get warnings if you pass incorrectly formatted props to a component.

If you liked this Vue tip, follow me on BlueSky to get notified about new tips, blog posts, and more. Alternatively (or additionally), you can subscribe to my weekly Vue & Nuxt newsletter :

I will never share any of your personal data. You can unsubscribe at any time.