Files
front-AT/app/Components/SelectAreas.tsx
T

53 lines
1.2 KiB
TypeScript
Raw Normal View History

2025-10-08 15:47:08 -06:00
"use client";
import { useEffect, useState } from "react";
import { envConfig } from "../lib/config";
2026-03-02 10:34:42 -06:00
import axios from "axios";
import Cookies from "js-cookie";
if (!envConfig.apiUrl) {
console.error("API URL is not defined in envConfig");
}
2025-10-08 11:40:11 -06:00
2025-10-14 11:48:43 -06:00
interface proms {
url: string;
}
export default function SelectAreas(props: proms) {
2025-10-08 15:47:08 -06:00
const [areas, setAreas] = useState([]);
2025-10-08 11:40:11 -06:00
const [selectedArea, setSelectedArea] = useState("");
2026-03-02 10:34:42 -06:00
const token = Cookies.get("token");
const headers = { Authorization: `Bearer ${token}` };
2025-10-08 11:40:11 -06:00
useEffect(() => {
2025-10-09 10:54:53 -06:00
axios
2026-03-02 10:34:42 -06:00
.get(`${envConfig.apiUrl}/area-ubicacion`, { headers }
)
2025-10-08 11:40:11 -06:00
.then((data) => {
2025-10-09 10:54:53 -06:00
setAreas(data.data);
2025-10-08 11:40:11 -06:00
})
.catch((error) => {
console.error("Error al traer las áreas:", error);
});
}, []);
return (
<div>
<label htmlFor="areaSelect">Selecciona un área:</label>
2025-10-08 15:47:08 -06:00
<select
id="areaSelect"
value={selectedArea}
onChange={(e) => setSelectedArea(e.target.value)}
>
2025-10-08 11:40:11 -06:00
<option value="">-- Selecciona una opción --</option>
2025-10-08 15:47:08 -06:00
{areas.map((area: any, index) => (
2025-10-09 10:54:53 -06:00
<option key={index} value={area.area}>
{area.area}
2025-10-08 11:40:11 -06:00
</option>
))}
</select>
</div>
);
}
2026-01-16 15:47:16 -06:00
//IO