cavas menu에 따른 메뉴 변경

This commit is contained in:
김창수 2024-09-24 14:22:58 +09:00
parent 47dcdb8d74
commit 63db3e2864
6 changed files with 23 additions and 11 deletions

View File

@ -10,24 +10,26 @@ import SettingModal01 from '@/components/canvas/modal/settoing01/SettingModal01'
import Header from '@/components/layout/Header' import Header from '@/components/layout/Header'
import { modalState } from '@/store/modalAtom' import { modalState } from '@/store/modalAtom'
import '@/styles/contents.scss' import '@/styles/contents.scss'
import { useState } from 'react'
import { useRecoilValue } from 'recoil' import { useRecoilValue } from 'recoil'
export default function CanvasPage() { export default function CanvasPage() {
const modalOption = useRecoilValue(modalState); const modalOption = useRecoilValue(modalState);
const [menuValue, setMenuValue] = useState(null);
return( return(
<div className="wrap"> <div className="wrap">
<Header/> <Header/>
<div className="content"> <div className="content">
<div className="canvas-wrap"> <div className="canvas-wrap">
<CanvasMenu/> <CanvasMenu setMenuValue={setMenuValue}/>
<div className="canvas-content"> <div className="canvas-content">
<CanvasLayout/> <CanvasLayout menuValue={menuValue}/>
</div> </div>
{modalOption.option && <SettingModal01/>} {/* {modalOption.option && <SettingModal01/>}
{/* {modalOption.outerwall && <OuterLineWall/>} 확인용 숨김처리*/} {modalOption.outerwall && <OuterLineWall/>} 확인용 숨김처리
{modalOption.gridoption && <GridOption/>} {modalOption.gridoption && <GridOption/>}
{modalOption.gridcopy && <GridCopy/>} {modalOption.gridcopy && <GridCopy/>}
{modalOption.gridmove && <GridMove/>} {modalOption.gridmove && <GridMove/>} */}
</div> </div>
</div> </div>
</div> </div>

View File

@ -15,7 +15,7 @@ export default function MainPage() {
<div className="store-id-title">販売店ID / 販売店名</div> <div className="store-id-title">販売店ID / 販売店名</div>
</div> </div>
<span className="store-arr"></span> <span className="store-arr"></span>
<div className="store-id-name">ナカザワ建販株式会社その他 )</div> <div className="store-id-name">X174 / ナカザワ建販株式会社その他 )</div>
</div> </div>
<div className="main-search-wrap"> <div className="main-search-wrap">
<div className="search-raido-wrap"> <div className="search-raido-wrap">

View File

@ -0,0 +1,5 @@
export default function CanvasEstimate() {
return(
<></>
)
}

View File

@ -2,8 +2,9 @@
import { useState } from "react" import { useState } from "react"
import CanvasFrame from "./CanvasFrame"; import CanvasFrame from "./CanvasFrame";
import CanvasEstimate from "./CanvasEstimate";
export default function CanvasLayout () { export default function CanvasLayout ({menuValue}) {
const [plans, setPlans] = useState([{ id: 0, name: 'Plan 1' }, { id: 1, name: 'Plan 2' }, { id: 2, name: 'Plan 3' }]); const [plans, setPlans] = useState([{ id: 0, name: 'Plan 1' }, { id: 1, name: 'Plan 2' }, { id: 2, name: 'Plan 3' }]);
const [idxNum, setIdxNum] = useState(null); const [idxNum, setIdxNum] = useState(null);
@ -39,7 +40,8 @@ export default function CanvasLayout () {
<span></span> <span></span>
</button> </button>
</div> </div>
<CanvasFrame/> {menuValue !== 5 && menuValue !== 6 && <CanvasFrame/>}
{menuValue === 5 && <CanvasEstimate/>}
</div> </div>
) )
} }

View File

@ -1,12 +1,12 @@
'use client' 'use client'
import { useState } from "react"; import { useEffect, useState } from "react";
import Qselect from "../common/select/Qselect"; import Qselect from "../common/select/Qselect";
import MenuDepth01 from "./MenuDepth01"; import MenuDepth01 from "./MenuDepth01";
import { useRecoilState } from "recoil"; import { useRecoilState } from "recoil";
import { modalState } from "@/store/modalAtom"; import { modalState } from "@/store/modalAtom";
export default function CanvasMenu() { export default function CanvasMenu({setMenuValue}) {
const [modalOption, setModalOption] = useRecoilState(modalState); //modal state const [modalOption, setModalOption] = useRecoilState(modalState); //modal state
const [menuNumber, setMenuNumber] = useState(null); const [menuNumber, setMenuNumber] = useState(null);
const [vertical, setVertical] = useState(true); const [vertical, setVertical] = useState(true);
@ -20,6 +20,9 @@ export default function CanvasMenu() {
setMenuNumber(null) setMenuNumber(null)
} }
} }
useEffect(() => {
setMenuValue(menuNumber);
}, [menuNumber])
return( return(
<div className={`canvas-menu-wrap ${(menuNumber === 2 || menuNumber === 3 || menuNumber === 4) ? 'active' : ""}`}> <div className={`canvas-menu-wrap ${(menuNumber === 2 || menuNumber === 3 || menuNumber === 4) ? 'active' : ""}`}>
<div className="canvas-menu-inner"> <div className="canvas-menu-inner">

View File

@ -3,7 +3,6 @@
height: calc(100vh - 47px); height: calc(100vh - 47px);
display: flex; display: flex;
flex-direction: column; flex-direction: column;
background-color: #fff;
.canvas-content{ .canvas-content{
flex: 1 1 auto; flex: 1 1 auto;
.canvas-layout{ .canvas-layout{
@ -379,6 +378,7 @@
.canvas-frame{ .canvas-frame{
position: relative; position: relative;
height: calc(100% - 36.5px); height: calc(100% - 36.5px);
background-color: #fff;
canvas{ canvas{
position: absolute; position: absolute;
top: 0; top: 0;