Building Your First Vue.js Component

Vue.js is a component-based framework, meaning that applications are built using reusable components. Each component encapsulates its own HTML, CSS, and JavaScript. This article will guide you through the process of building your first Vue.js component from scratch.

Creating a New Vue Component

Vue.js components are typically stored in .vue files. Each component file consists of three main sections: '<template>', '<script>', and '<style>'. Let’s create a simple component called Greeting.vue.

  1. Navigate to Your Project Folder: Use the terminal to move into your Vue project directory:
cd my-vue-project
  1. Create a New Component File: In the src/components directory, create a new file named Greeting.vue.
<template>
  <div>
    <h1>Hello, Vue.js!</h1>
    <p>Welcome to your first Vue component.</p>
  </div>
</template>

<script>
export default {
  name: 'Greeting'
};
</script>

<style scoped>
h1 {
  color: #42b983;
}
</style>

This Greeting.vue component contains:

  • <template>: Defines the HTML structure of the component.
  • <script>: Contains the JavaScript logic for the component, such as data properties and methods.
  • <style>: Contains the CSS styles scoped to this component. The scoped attribute ensures that the styles only apply to this component.

Using Your Component

After creating the component, you need to use it within your Vue application. Open the src/App.vue file and modify it to include the Greeting component:

<template>
  <div id="app">
    <Greeting />
  </div>
</template>

<script>
import Greeting from './components/Greeting.vue';

export default {
  name: 'App',
  components: {
    Greeting
  }
};
</script>

<style>
#app {
  text-align: center;
  margin-top: 60px;
}
</style>

In this updated App.vue file:

  • Import the Component: Use import Greeting from './components/Greeting.vue'; to import the Greeting component.
  • Register the Component: Add Greeting to the components object in the export default block.
  • Use the Component: Insert the '<Greeting />' tag into the '<template>' section to use the component in your app.

Testing Your Component

Save your changes and ensure your development server is running. Open your browser and navigate to http://localhost:8080. You should see the content of the Greeting component rendered on the page.

Conclusion

You have successfully created and used your first Vue.js component. Components are the building blocks of Vue.js applications, allowing you to encapsulate and manage different parts of your user interface. As you become more familiar with Vue.js, you can explore advanced features such as component props, events, and lifecycle hooks to build more interactive and complex applications.

Keep experimenting with Vue.js components and expand your knowledge to create dynamic and engaging web applications.