About the Vue.js 3 Components Fundamentals course

Learn everything you need to know to get started with Vue.js components. Web components are custom developer defined HTML elements, like <p>,<body>, or <button>, that allows us to encapsulate some functionality of our applications.

Components are the puzzle pieces of a Vue.js website. Components combine blocks of HTML, JavaScript, and CSS. And as a result, they allow us to easily encapsulate and reuse functionality in our applications.

After this course, you'll be familiar with:

  • The idea behind components and how Vue.js components work
  • Component's template, and multiple ways to define your template
  • Communication between components with props and custom events
  • The difference between global and local component registration
  • The lifecycle hooks of a component
  • Component composition with nested components and slots
  • Component's best practices and common pitfalls

We've also prepared exercises for the course, so you can practice what you learn.

Vue.js Component Exercises:

  • Build a GitHub user profile component
  • Create a Notification Message component

You need a basic understanding of Vue.js to enjoy this course. We recommend watching Vue.js 3 Fundamentals if you're not already familiar with Vue.js

·
·
·

What you will learn in the Vue.js 3 Components Fundamentals course

Learn Vue.js Components
Component Communication with Props and Custom Events
Global vs Local Component Registration
Component Lifecycle Hooks
Component Composition

Share this course

Request a course

Who's behind the course

Daniel Kelly - Teacher
Daniel is a full-time educator at Vue School and has a massive passion for Vue.js, Nuxt.js, and Laravel.
Rolf Haug - Contributor
Rolf has been in development industry for 16 years. Long-time entrepreneur and consultant currently working on educational content and workshops.
Alex Kyriakidis - Contributor
Alex is an educator and consultant, core member of the Vue.js team and author of the first best-selling books on Vue.js.