오늘의 목표

수행 내역

import { createContext, useState } from 'react';

export const BlogContext = createContext(null);

export const BlogProvider = ({ children }) => {
    const [draggingItem, setDraggingItem] = useState(null);
    const value = { draggingItem, setDraggingItem };

    return <BlogContext.Provider value={value}>{children}</BlogContext.Provider>;
};

const { draggingItem, setDraggingItem } = useContext(BlogContext);

    const handleDragStart = (e) => {
        setDraggingItem(droppableItem);
        e.dataTransfer.setData('text/plain', '');
    };

    const handleDragEnd = () => {
        setDraggingItem(null);
    };
<ReactGridLayout
    layout={layout}
    cols={5}
    rowHeight={170}
    width={900}
    onDrop={onDrop}
    isDroppable={true}
    isDraggable={false}
    droppingItem={{
        i: '__dropping-elem__',
        w: draggingItem ? draggingItem.w : 1,
        h: draggingItem ? draggingItem.h : 1,
    }}
    compactType={'vertical'}
    onLayoutChange={onLayoutChange}
>
    {renderGridItems()}
</ReactGridLayout>

문제 및 이슈

참고자료

지원요청

내일 계획