Layout and header in Nuxt
How to add a custom header in Nuxt
Sat Jun 19 2021
Nuxtjs is a framework which simplifying the development of the Vue project.
Lets learn how to add a cool Header component which will displayed all of the routes in our project.
Component
The component folder holds our custom vue components, lets create a Header component first
Our simple Header look like this
<template>
<div>
<nav>
<nuxt-link to="/" >
<div class="navigation\_\_logo">BlueBird</div>
</nuxt-link>
<div class="navigation\_\_user"> @user</div>
</nav>
</div>
</template>
<script>
export default {
name: "Header",
created() {},
data() {
return {};
},
props: {},
methods: {},
components:{
}
};
</script>
<style scoped>
.header {
background-color: red;
}
nav {
display: flex;
align-items: center;
justify-content: space-between;
padding: 10px 5%;
background-color: crimson;
color: white;
}
nav.navigation\_\_logo {
font-weight: bold;
font-size: 24px;
}
a{
text-decoration:none;
color: white;
}
.navigation\_\_user {
font-weight: bold;
}
</style>
Layout
The default.vue under Layout folder is responsible for structuring the site layout, we can add our component before the Nuxt component as follow, leave everything else intact.
<template>
<div>
<Header/>
<Nuxt />
</div>
</template>
<script>
import Header from '@/components/Header.vue'
export default {
components:{
Header
}
}
</script>We can also create additional components and import and place them in the default.vue
Comments