Thư viện wrapper cho Leaflet, được tùy chỉnh đặc biệt cho Appsmith với các chức năng GIS của DTU.
npm install dtuappsmithmap
<script src="https://cdn.jsdelivr.net/npm/dtuappsmithmap@2.2.20/dist/index.umd.js"></script>
- Thêm URL sau vào Resource của Appsmith:
https://cdn.jsdelivr.net/npm/dtuappsmithmap@2.2.20/dist/index.umd.js
Tìm hiểu thêm về plugin tại DTUAppSmithMap
Tìm hiểu chi tiết hướng dẫn tại Appsmith
- Tạo và quản lý marker với icon tùy chỉnh từ Font Awesome
- Hiển thị popup thông tin với style DTU
- Vẽ đường đi theo đường phố thực tế
- Tính khoảng cách giữa các điểm
- Vẽ vùng ảnh hưởng với gradient
- Theo dõi vị trí hiện tại
const map = new DTUAppsmithMap('map-container', {
center: [16.0544, 108.2022],
zoom: 13
});
map.taoDiaDiem(
16.0544, // latitude
108.2022, // longitude
"Đại học Duy Tân", // title
"254 Nguyễn Văn Linh", // content
"fas fa-university", // icon class (Font Awesome)
"#003C71", // icon color
{ // options
marker: {},
popup: {}
}
);
map.capNhatViTriHienTai(
16.0544,
108.2022,
"Vị trí của bạn",
"Current location"
);
// Vẽ đường đi giữa 2 điểm
await map.veDuongDi(
16.0544, 108.2022, // điểm bắt đầu
16.0464, 108.2326, // điểm kết thúc
{
color: '#FF0000', // màu đường
weight: 3, // độ dày
opacity: 0.8 // độ trong suốt
}
);
// Vẽ đường đi giữa 2 marker
await map.veDuongDiMarker(marker1, marker2, options);
// Tính khoảng cách giữa 2 điểm
const distance = map.tinhKhoangCach(
16.0544, 108.2022, // điểm 1
16.0464, 108.2326 // điểm 2
);
// Tính khoảng cách từ vị trí hiện tại đến một điểm
const distance = map.tinhKhoangCachDenDiem(16.0464, 108.2326);
// Lấy danh sách khoảng cách đến tất cả các điểm
const distances = map.tinhKhoangCachDenCacDiem();
map.veVungTron(
16.0544, // latitude
108.2022, // longitude
1000, // bán kính (mét)
'#003C71', // màu
{ // options
weight: 2,
opacity: 1,
fillOpacity: 0.2
}
);
constructor(containerId, options)
: Khởi tạo bản đồ
taoDiaDiem(lat, lng, title, content, iconClass, iconColor, options)
: Tạo marker với popupcapNhatViTriHienTai(lat, lng, title, content)
: Cập nhật vị trí hiện tại
veDuongDi(lat1, lng1, lat2, lng2, options)
: Vẽ đường đi giữa 2 điểmveDuongDiMarker(marker1, marker2, options)
: Vẽ đường đi giữa 2 markerxoaDuongDi()
: Xóa tất cả đường đi
tinhKhoangCach(lat1, lng1, lat2, lng2)
: Tính khoảng cách giữa 2 điểmtinhKhoangCachMarker(marker1, marker2)
: Tính khoảng cách giữa 2 markertinhKhoangCachDenDiem(lat, lng)
: Tính khoảng cách từ vị trí hiện tạitinhKhoangCachDenCacDiem()
: Lấy danh sách khoảng cách đến tất cả điểm
veVungTron(lat, lng, radius, color, options)
: Vẽ vùng tròn với gradientxoaVungTron()
: Xóa tất cả vùng tròn
timKiemDiaChi(address)
: Tìm kiếm địa điểm và trả về tọa độ javascript // Tìm kiếm địa chỉ const coords = await map.timKiemDiaChi("254 Nguyễn Văn Linh"); // Kết quả: {lat: 16.0544, lng: 108.2022}
- `timVaDanhDau(address, options)`: Tìm kiếm và đánh dấu địa điểm trên bản đồ
```javascript
// Tìm và đánh dấu địa điểm
const marker = await map.timVaDanhDau(
"Đại học Duy Tân",
{
iconClass: 'fa-university',
iconColor: '#003C71'
}
);
## 🎨 Tùy chỉnh Style
### Custom Marker Icon
```javascript
const options = {
marker: {
draggable: true,
title: 'Marker title'
},
popup: {
maxWidth: 300,
className: 'custom-popup'
}
};
const routeOptions = {
color: '#FF0000',
weight: 3,
opacity: 0.8,
dashArray: '10, 10' // đường nét đứt
};
const circleOptions = {
stroke: true,
color: '#003C71',
weight: 2,
opacity: 1,
fillOpacity: 0.2
};
Trả về thông tin chi tiết về một địa điểm dựa trên ID.
-
📧 Email: thanhtruong23111999@gmail.com
-
📱 Hotline: 0376 659 652
" 🏫 DTU_DZ - DUY TAN UNIVERSITY - SCS ✨"
- Lê Thanh Trường : thanhtruong23111999@gmail.com
- Võ Văn Việt : vietvo371@gmail.com
- Nguyễn Ngọc Duy Thái : kkdn011@gmail.com
Chúng tôi rất hoan nghênh mọi đóng góp! Xem CONTRIBUTING để biết thêm chi tiết.
- Fork repo này
- Tạo branch mới (
git checkout -b feature/AmazingFeature
) - Commit thay đổi (
git commit -m 'Add some AmazingFeature'
) - Push lên branch (
git push origin feature/AmazingFeature
) - Tạo Pull Request
Nếu bạn phát hiện lỗi, vui lòng tạo issue mới với:
- Mô tả chi tiết lỗi
- Các bước tái hiện
- Screenshots nếu có
- Môi trường (browser, OS...)
Xem CHANGELOG để biết lịch sử thay đổi.
Xem CODE_OF_CONDUCT để biết các quy tắc và hành vi được chấp nhận.
- Issues: GitHub Issues
- Security: Đối với các vấn đề bảo mật nhạy cảm, vui lòng liên hệ trực tiếp qua email: thanhtruong23111999@gmail.com
Dự án được phân phối dưới giấy phép MIT License