반응형
vuedptj bootstrap을 사용하기 위해서는 일반 bootstrap이 아니라 vue전용 bootstrap을 사용해주어야 합니다.
terminal 또는 cmd를 열어주세요
bootstrapVue설치
npm i vue bootstrap vue-bootstrap
설치된 부트스트랩을 적용하기 위해서는
main.js에 아래 코드를 추가해주어야합니다.
import { BootstrapVue, IconsPlugin } from "bootstrap-vue";
// Make BootstrapVue available throughout your project
Vue.use(BootstrapVue);
// Optionally install the BootstrapVue icon components plugin
Vue.use(IconsPlugin);
// Import Bootstrap an BootstrapVue CSS files (order is important)
import "bootstrap/dist/css/bootstrap.css";
import "bootstrap-vue/dist/bootstrap-vue.css";
main.js
import Vue from 'vue'
import App from './App.vue'
import { BootstrapVue, IconsPlugin } from "bootstrap-vue";
// Make BootstrapVue available throughout your project
Vue.use(BootstrapVue);
// Optionally install the BootstrapVue icon components plugin
Vue.use(IconsPlugin);
// Import Bootstrap an BootstrapVue CSS files (order is important)
import "bootstrap/dist/css/bootstrap.css";
import "bootstrap-vue/dist/bootstrap-vue.css";
Vue.config.productionTip = false
new Vue({
render: h => h(App),
}).$mount('#app')
이제 bootstrap을 이용하여 header를 만들어줄게요
위 페이지에서 components -> navbar 에서 첫번째로 나오는 코드를 가져오겠습니다.
<div>
<b-navbar toggleable="lg" type="dark" variant="info">
<b-navbar-brand href="#">NavBar</b-navbar-brand>
<b-navbar-toggle target="nav-collapse"></b-navbar-toggle>
<b-collapse id="nav-collapse" is-nav>
<b-navbar-nav>
<b-nav-item href="#">Link</b-nav-item>
<b-nav-item href="#" disabled>Disabled</b-nav-item>
</b-navbar-nav>
<!-- Right aligned nav items -->
<b-navbar-nav class="ml-auto">
<b-nav-form>
<b-form-input size="sm" class="mr-sm-2" placeholder="Search"></b-form-input>
<b-button size="sm" class="my-2 my-sm-0" type="submit">Search</b-button>
</b-nav-form>
<b-nav-item-dropdown text="Lang" right>
<b-dropdown-item href="#">EN</b-dropdown-item>
<b-dropdown-item href="#">ES</b-dropdown-item>
<b-dropdown-item href="#">RU</b-dropdown-item>
<b-dropdown-item href="#">FA</b-dropdown-item>
</b-nav-item-dropdown>
<b-nav-item-dropdown right>
<!-- Using 'button-content' slot -->
<template #button-content>
<em>User</em>
</template>
<b-dropdown-item href="#">Profile</b-dropdown-item>
<b-dropdown-item href="#">Sign Out</b-dropdown-item>
</b-nav-item-dropdown>
</b-navbar-nav>
</b-collapse>
</b-navbar>
</div>
component 폴더 밑에 layout이라는 폴더를 만들어주겠습니다.
그리고 layout폴더 밑에 Header.vue 파일을 만들어주세요.
기본적으로 vue 파일은 아래와 같은 구조를 가집니다.
<template>
</template>
<script>
export default {
}
</script>
아까 가져온 navbar 코드를 template 부분에 넣어줍니다.
Header.vue
<template>
<div>
<b-navbar toggleable="lg" type="dark" variant="info">
<b-navbar-brand href="#">NavBar</b-navbar-brand>
<b-navbar-toggle target="nav-collapse"></b-navbar-toggle>
<b-collapse id="nav-collapse" is-nav>
<b-navbar-nav>
<b-nav-item href="#">Link</b-nav-item>
<b-nav-item href="#" disabled>Disabled</b-nav-item>
</b-navbar-nav>
<!-- Right aligned nav items -->
<b-navbar-nav class="ml-auto">
<b-nav-form>
<b-form-input
size="sm"
class="mr-sm-2"
placeholder="Search"
></b-form-input>
<b-button size="sm" class="my-2 my-sm-0" type="submit"
>Search</b-button
>
</b-nav-form>
<b-nav-item-dropdown text="Lang" right>
<b-dropdown-item href="#">EN</b-dropdown-item>
<b-dropdown-item href="#">ES</b-dropdown-item>
<b-dropdown-item href="#">RU</b-dropdown-item>
<b-dropdown-item href="#">FA</b-dropdown-item>
</b-nav-item-dropdown>
<b-nav-item-dropdown right>
<!-- Using 'button-content' slot -->
<template #button-content>
<em>User</em>
</template>
<b-dropdown-item href="#">Profile</b-dropdown-item>
<b-dropdown-item href="#">Sign Out</b-dropdown-item>
</b-nav-item-dropdown>
</b-navbar-nav>
</b-collapse>
</b-navbar>
</div>
</template>
<script>
export default {
name: "header",
};
</script>
export default 부분에 name: "header"를 추가해주어야합니다.
이제 App.vue안에 Header에 대한 내용을 추가해주어야합니다.
App.vue
<template>
<div id="app">
<Header />
<div id="content" class="content">
<router-view></router-view>
</div>
</div>
</template>
<script>
import Header from "./components/layout/Header.vue";
export default {
name: "App",
components: {
Header,
},
};
</script>
먼저 Header를 import 해주고,
components안에 Header를 추가해주고,
template 부분에 <Header />를 추가해줍니다. 이 위치에 header의 template 코드가 보여질 것입니다.
여기까지 해준 뒤
npm run serve (또는 yarn run serve) 로 동작시키면
home, about 페이지 모두 bootstrap navbar를 적용시킨 header가 나타나게 됩니다.
감사합니다^-^
반응형
'🌸 Frontend > 💚 Vue.js' 카테고리의 다른 글
[Vue.js]4.data, click, methods 사용하기 (0) | 2021.02.02 |
---|---|
[Vue.js]2.vue-router 사용하기 (0) | 2021.01.18 |
[Vue.js]1.Vue개발환경 세팅 (0) | 2021.01.16 |