46 lines
1.2 KiB
React
46 lines
1.2 KiB
React
|
import React, { useState, useEffect } from "react";
|
|||
|
import axios from 'axios'; // Assurez-vous que le chemin d'importation soit correct
|
|||
|
import { ItemBox } from './ItemBox';
|
|||
|
import { Space, DatePicker, Row, Col, Select, Input, InputNumber } from 'antd';
|
|||
|
import '../../assets/styles/item-page.css'
|
|||
|
|
|||
|
|
|||
|
|
|||
|
const { RangePicker } = DatePicker;
|
|||
|
const { Option } = Select;
|
|||
|
|
|||
|
const itemsPerPage = 8; // Nombre total d'items par page
|
|||
|
const itemsPerRow = 4; // Nombre d'items par rang<6E>e
|
|||
|
|
|||
|
// Fonction pour diviser le tableau d'items en rang<6E>es
|
|||
|
const chunkArray = (arr, size) => {
|
|||
|
const chunkedArr = [];
|
|||
|
for (let i = 0; i < arr.length; i += size) {
|
|||
|
chunkedArr.push(arr.slice(i, i + size));
|
|||
|
}
|
|||
|
return chunkedArr;
|
|||
|
};
|
|||
|
|
|||
|
// Composant d'affichage de la page
|
|||
|
export const RoomList = (roomsParam) => {
|
|||
|
const [rooms, setRooms] = useState([]);
|
|||
|
const [selectedRoom, setSelectedRoom] = useState('all');
|
|||
|
|
|||
|
useEffect(() => {
|
|||
|
setRooms(roomsParam)
|
|||
|
}, [roomsParam]);
|
|||
|
|
|||
|
const handleRoomChange = (value) => {
|
|||
|
setSelectedRoom(value);
|
|||
|
};
|
|||
|
|
|||
|
return (
|
|||
|
<div className="list-container">
|
|||
|
<div className="room-list">
|
|||
|
{rooms.forEach((room) => {
|
|||
|
<roomB
|
|||
|
}) }
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
);
|
|||
|
};
|