1.2.3 • Published 11 months ago
@daoyi/coordinates-editor-modal v1.2.3
@daoyi/coordinates-editor-modal
A React modal component for editing coordinates (latitude & longitude) easily, with integrated map and table interface.
🗺️ 經緯度編輯元件,整合地圖與表格輸入,支援自訂樣式、外部查詢、自動同步。
📦 Installation
npm install @daoyi/coordinates-editor-modal此元件依賴以下套件,請一併安裝(若尚未安裝):
npm install react react-dom @mui/material @mui/icons-material react-leaflet leaflet axios uuid🚀 Usage
import React, { useState } from "react";
import { CoordinatesModal } from "@daoyi/coordinates-editor-modal";
export default function App() {
const [open, setOpen] = useState(false);
return (
<CoordinatesModal
open={open}
setOpen={setOpen}
title="測試地區"
coordinateOptions={[
{ label: "地點 A", longitude: "121.5", latitude: "25.0" },
{ label: "地點 B", longitude: "121.6", latitude: "25.1" }
]}
onClick={(coords) => console.log("儲存結果", coords)}
/>
);
}⚙️ Props 說明
| Prop | Type | Description |
|---|---|---|
open | boolean | 控制 modal 是否開啟 |
setOpen | (val: boolean) => void | 切換開關狀態 |
readOnly | boolean | 是否為唯讀模式 |
isLoading | boolean | 是否顯示 loading 效果 |
locations | string[] | 初始地點(字串)陣列 |
title | string | modal 顯示標題 |
tableInfo | string | 表格上方提示文字 |
tableHeader | string[] | 表格欄位標題(預設為名稱/經度/緯度) |
mapInfo | string | 地圖上方提示文字 |
coordinateOptions | { label, longitude, latitude }[] | 可選的地點與經緯度資料 |
googleMapsGeoApiKey | string | Google Maps Geocoding API Key(可選) |
getCoordinates | (label: string) => Promise<{ label, longitude, latitude }> | 自定查詢座標函式 |
mapCenter | [number, number] | 地圖中央預設經緯度 |
mapZoom | number | 地圖遠近 |
onClick | (coordinates) => void | 按下「確定」時觸發,回傳目前所有經緯度資料 |
infoIcon, addCoordinatesIcon, deleteIcon, mapPinIcon | React.ReactNode | 自訂圖示元件 |
xxxSx | object | 提供 MUI sx 自訂樣式,包含 modal、button、表格、地圖等元件 |
🛠 Peer Dependencies
| 套件 | 說明 |
|---|---|
react, react-dom | React 16.8+ |
@mui/material, @mui/icons-material | UI 元件(button, modal, icon) |
react-leaflet, leaflet | 地圖功能 |
axios | 查詢外部 API |
uuid | 產生唯一 ID |
請確保這些依賴已安裝:
npm install react react-dom @mui/material @mui/icons-material react-leaflet leaflet axios uuid📦 原始碼與套件資訊
此專案托管於 GitLab,並發佈於 npm:
- GitLab Repo:
https://gitlab.daoyidh.com/npm/coordinates-editor-modal.git - npm 頁面:@daoyi/coordinates-editor-modal
📄 License
ISC License
© DaoYi Technology
© Johnny 蔡政軒
1.2.3
11 months ago
1.2.2
11 months ago
1.2.1
11 months ago
1.2.0
11 months ago
1.1.1
11 months ago
1.1.0
11 months ago
1.0.10
11 months ago
1.0.9
11 months ago
1.0.8
11 months ago
1.0.7
11 months ago
1.0.6
11 months ago
1.0.5
11 months ago
1.0.4
12 months ago
1.0.3
12 months ago
1.0.2
12 months ago
1.0.1
12 months ago
1.0.0
12 months ago