인프런 커뮤니티 질문&답변

metaone11님의 프로필 이미지
metaone11

작성한 질문수

[최신] Vue 강의 끝판왕 : Nuxt 3 완벽 마스터

Utils - navigateTo

VSCode처럼 멀티 Title & Menu Bar로 개발할려면?

작성

·

107

0

매번 질문만 드려서 죄송합니다.

질문
VSCode에서 사이드 바의 파일들을 클릭하면 Title & Menu Bar가 멀티로 표시되는데 이렇게 구현할려면
QDrawer와 QToolbar로 처리가 가능한지 궁금합니다.

답변 2

1

짐코딩님의 프로필 이미지
짐코딩
지식공유자

안녕하세요.

VSCode 사이드 바에서 파일을 클릭 한다는게

VSCode 사이드 바에서 "파일 탐색기 아이콘" 또는 "확장 프로그램 설치 아이콘"과 같은 아이콘 클릭으로 생각하면 되겠죠?

그리고 그러한 아이콘을 클릭 했을 때 나오는 멀티로 표시되는 메뉴는 말씀 하신 것처럼 퀘이사 프레임워크로 구현할 수 있습니다.  메뉴를 접었다 펼치는 UI는 https://quasar.dev/vue-components/expansion-item 해당 컴포넌트를 참조하시면 되고요. 추가로 필요한 기능은 커스텀 또는 확장 하시면 돼요. (질문을 잘 이해한거 맞겠죠? 스크린샷이 있었으면 더 좋았을 거 같아요!^^ㅜ)

 

metaone11님의 프로필 이미지
metaone11
질문자

죄송합니다. 제가 질문을 잘못한 것 같습니다.
ERP 같은 프로그램을 개발할 때는 메뉴를 클릭 했을 때 화면들이 탭 형태로 게속 보이도록 해야 합니다. 당연히 메뉴도 대, 중, 소와 같이 3레벨 정도의 깊이로 펼치고 접도록 해야 합니다.

아마 답변은 메뉴에 대한 부분인 것 같습니다

reqH.png

index.d.ts => 공통코드 등록
course.vue => 로그인내역 조회
login.vue => 상품정보 등록 화면이라 생각하고 메뉴에서 클릭했다면
위 이미지의 오른쪽 상단 탭이 3개가 표시된 것처럼 화면이 표시가 되어야 합니다.
이것이 가능할까요? Vue로 백오피스와 같은 업무용 프로그램 개발이 쉬울지 걱정입니다.

짐코딩님의 프로필 이미지
짐코딩
지식공유자

가능합니다 🙂

그리고 자바 백엔드 하시는 분들이 UI를 함께 개발할 때 러닝커브가 낮은 뷰를 선택하시는 경우가많아요. 나쁘지 않은 선택이고요 :)

그리고 해당 UI같은 경우는 퀘이사에서 제공하는 Tabs 컴포넌트를 이용하셔도 되고요. 직접 구현하셔도 됩니다 🙂

"vue tabs" 라는 키워드를 활용하시면 다양한 인싸이트를 얻을 수 있을 거예요. (ex: https://www.npmjs.com/package/vue3-tabs-component)

감사합니다.

 

0

안녕하세요, 인프런 AI 인턴입니다. metaone11님.

VSCode와 같이 상단에 여러 개의 Title 및 Menu Bar를 구현하고 싶으신 경우, Vue.jsQuasar Framework에서 제공하는 QDrawerQToolbar를 이용하여 충분히 가능합니다.

아래는 관련해서 도움이 될 수 있는 기존 답변과 자료들입니다:

  1. Vuetify 다중 레이아웃 구현하기

    이 게시글에서는 여러 레이아웃을 구성하는 방법에 대해 설명합니다. QDrawerQToolbar를 이용하여 멀티 Title 및 Menu Bar를 구성하는 데 참고할 수 있습니다.

  2. 버튼이 마음대로 크기가 바뀌어요

    이 답변에서는 QToolbar의 사용과 버튼 크기 조정에 대한 문제를 다루고 있습니다. 멀티 Menu Bar 구현 시 유용할 수 있습니다.

  3. 화면 나누기와 관련된 Vuetify 속성에 대한 설명

    이 답변은 화면 레이아웃을 구현하는 방법을 설명하는 데 도움을 줄 수 있습니다.

QDrawerQToolbarQuasar Framework에서 레이아웃을 구성할 때 자주 사용되는 컴포넌트입니다. QDrawer를 이용해 사이드 바를 구성하고, 각 사이드 바 항목 클릭 시 QToolbar에 동적으로 Title 및 Menu를 변경하여 VSCode와 같은 UI를 구현하는 예시는 다음과 같습니다:

<template>
  <q-layout>
    <q-drawer v-model="drawer" show-if-above>
      <q-list>
        <q-item clickable v-ripple @click="changeTitle('File Explorer')">
          <q-item-section>File Explorer</q-item-section>
        </q-item>
        <q-item clickable v-ripple @click="changeTitle('Terminal')">
          <q-item-section>Terminal</q-item-section>
        </q-item>
      </q-list>
    </q-drawer>

    <q-page-container>
      <q-toolbar>
        <q-toolbar-title>{{title}}</q-toolbar-title>
        <q-btn @click="toggleMenu" label="Menu"></q-btn>
      </q-toolbar>

      <q-page>
        <!-- Your Content Here -->
      </q-page>
    </q-page-container>
  </q-layout>
</template>

<script setup>
import { ref } from 'vue';

const drawer = ref(false);
const title = ref('Default Title');

function changeTitle(newTitle) {
  title.value = newTitle;
}

function toggleMenu() {
  // Implement menu toggle logic here
}
</script>

위의 코드를 참고하여 사용자의 요구 사항에 따라 레이아웃과 기능을 맞춰 나갈 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

metaone11님의 프로필 이미지
metaone11

작성한 질문수

질문하기