> 웹 프론트엔드 > View.js > vue3 철회 가능한 메뉴 구성 요소를 사용하는 방법

vue3 철회 가능한 메뉴 구성 요소를 사용하는 방법

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2023-05-10 14:55:13
앞으로
1039명이 탐색했습니다.

Rendering

vue3 철회 가능한 메뉴 구성 요소를 사용하는 방법

1.컴포넌트 아래에 컨테이너 파일을 생성하고, 컨테이너 파일 아래에 src 파일을 생성한 후, src 파일 아래에 index.vue 파일을 생성합니다

vue3 철회 가능한 메뉴 구성 요소를 사용하는 방법

이 파일에

<template>
    <div class="common-layout">
      <el-container>
        <el-aside width="auto">
<!--        侧边菜单栏组件-->
        <nav-side v-model:collapse="isCollapse"></nav-side>
        </el-aside>
        <el-container>
          <el-header>
<!--          头部组件-->
            <nav-header v-model:collapse="isCollapse"></nav-header>
          </el-header>
          <el-main>
            <router-view></router-view>
          </el-main>
        </el-container>
      </el-container>
    </div>
</template>
<script lang="ts" setup>
import {ref} from &#39;vue&#39;
import navHeader from &#39;./navHeader/index.vue&#39;
import navSide from &#39;./navSide/index.vue&#39;
const isCollapse=ref<boolean>(false)
 
</script>
 
<style lang="scss" scoped>
 
.el-header {
 padding: 0;
  border-bottom: 1px solid #eeeeee;
}
</style>
로그인 후 복사
쓰기

2 .라우터 파일

// @ts-ignore
import { createRouter, createWebHistory, RouteRecordRaw } from &#39;vue-router&#39;
const routes: Array<RouteRecordRaw> = [
    {
        path:&#39;/&#39;,
        component:()=>import(&#39;../components/container/src/index.vue&#39;),
        children:[
            {
                path: &#39;/&#39;,
                name: &#39;home&#39;,
                component:()=>import(&#39;../view/home.vue&#39;),
            }
        ]
    },
 
]
 
const router = createRouter({
    history: createWebHistory(),
    routes
})
 
export default router
로그인 후 복사

3 아래에 index.ts를 작성하고, 컨테이너 파일 아래에 src 파일을 생성한 후, src 파일 아래에 navHeader 파일을 생성하고, navHeader 파일 index.vue 아래에 생성합니다. file

vue3 철회 가능한 메뉴 구성 요소를 사용하는 방법

파일에

<template>
  <div class="header">
    <div @click="shrink">
<!--        伸缩图标-->
      <Expand v-if="collapse==true"></Expand>
      <Fold v-else></Fold>
    </div>
  </div>
</template>
 
<script lang="ts" setup>
import {ref} from &#39;vue&#39;
let props=defineProps<{
  collapse:Boolean
}>()
let emits=defineEmits([&#39;update:collapse&#39;])
const shrink=()=>{
  emits(&#39;update:collapse&#39;,!props.collapse)
}
</script>
 
<style lang="scss" scoped>
.header {
  height: 60px;
  padding: 0 20px;
  display: flex;
  align-items: center;
}
</style>
로그인 후 복사

쓰기 4. 컴포넌트 아래에 컨테이너 파일을 생성하고, 컨테이너 파일 아래에 src 파일을 생성한 후, src 파일 아래에 navSide 파일을 생성하고, navSide 파일 아래에 인덱스를 생성합니다. vue 파일

vue3 철회 가능한 메뉴 구성 요소를 사용하는 방법

을 작성하고 파일에

<template>
  <el-menu
      default-active="1"
      class="el-menu-vertical-demo"
      :collapse="collapse"
  >
    <el-menu-item index="1">
      <el-icon><House></House></el-icon>
      <template #title>导航一</template>
    </el-menu-item>
    <el-menu-item index="2">
      <el-icon><Message></Message></el-icon>
      <template #title>导航二</template>
    </el-menu-item>
    <el-menu-item index="3">
      <el-icon><Grid></Grid></el-icon>
      <template #title>导航三</template>
    </el-menu-item>
    <el-menu-item index="4">
      <el-icon><Tools></Tools></el-icon>
      <template #title>导航四</template>
    </el-menu-item>
  </el-menu>
</template>
 
<script lang="ts" setup>
import {ref} from &#39;vue&#39;
let props=defineProps<{
  collapse:Boolean
}>()
</script>
 
<style lang="scss" scoped>
.el-menu-vertical-demo:not(.el-menu--collapse) {
  width: 200px;
  min-height: 400px;
}
</style>
로그인 후 복사

를 작성합니다. 이는 접이식 메뉴 표시줄 구성요소를 캡슐화하는 코드입니다.

위 내용은 vue3 철회 가능한 메뉴 구성 요소를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿