pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

      <tfoot id='a56nK'></tfoot>

      <legend id='a56nK'><style id='a56nK'><dir id='a56nK'><q id='a56nK'></q></dir></style></legend>
      • <bdo id='a56nK'></bdo><ul id='a56nK'></ul>
      1. <small id='a56nK'></small><noframes id='a56nK'>

        <i id='a56nK'><tr id='a56nK'><dt id='a56nK'><q id='a56nK'><span id='a56nK'><b id='a56nK'><form id='a56nK'><ins id='a56nK'></ins><ul id='a56nK'></ul><sub id='a56nK'></sub></form><legend id='a56nK'></legend><bdo id='a56nK'><pre id='a56nK'><center id='a56nK'></center></pre></bdo></b><th id='a56nK'></th></span></q></dt></tr></i><div class="fnbrpbn" id='a56nK'><tfoot id='a56nK'></tfoot><dl id='a56nK'><fieldset id='a56nK'></fieldset></dl></div>

        Leaflet React在功能組件中獲取地圖實(shí)例

        Leaflet React get map instance in functional component(Leaflet React在功能組件中獲取地圖實(shí)例)

        1. <tfoot id='bx9dE'></tfoot>
        2. <small id='bx9dE'></small><noframes id='bx9dE'>

          <legend id='bx9dE'><style id='bx9dE'><dir id='bx9dE'><q id='bx9dE'></q></dir></style></legend>
                <tbody id='bx9dE'></tbody>
                  <bdo id='bx9dE'></bdo><ul id='bx9dE'></ul>
                  <i id='bx9dE'><tr id='bx9dE'><dt id='bx9dE'><q id='bx9dE'><span id='bx9dE'><b id='bx9dE'><form id='bx9dE'><ins id='bx9dE'></ins><ul id='bx9dE'></ul><sub id='bx9dE'></sub></form><legend id='bx9dE'></legend><bdo id='bx9dE'><pre id='bx9dE'><center id='bx9dE'></center></pre></bdo></b><th id='bx9dE'></th></span></q></dt></tr></i><div class="57tvrbr" id='bx9dE'><tfoot id='bx9dE'></tfoot><dl id='bx9dE'><fieldset id='bx9dE'></fieldset></dl></div>
                  本文介紹了Leaflet React在功能組件中獲取地圖實(shí)例的處理方法,對大家解決問題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

                  問題描述

                  我想在地圖外有一個按鈕,可以將視圖更改為另一個坐標(biāo).

                  I want to have a button outside the map that changes the view to another coordinates.

                  有沒有辦法讓 mapContainer 實(shí)例調(diào)用它們的函數(shù)?或者我該如何實(shí)現(xiàn)這個功能?

                  Is there any way to get mapContainer instance to call their functions? Or how can I implement that function?

                  我試圖通過使用 ref 來獲取它,但它不起作用.這是我當(dāng)前的代碼

                  I tried to get it by using ref, but it's not working. Here is my current code

                  const zoom = 13;
                  
                  function Map({ regionCoord, regionName }) {
                  
                      const mapRef = useRef();
                  
                      function handleFlyToClick() {
                        // This don't work
                        // const map = mapRef.current.leafletElement 
                        // map.flyTo(regionCoord, zoom)
                      }
                  
                   return (   
                          <React.Fragment>
                              <Grid container >
                                  <Grid item xs={10}>
                                      {regionCoord && <MapContainer
                                          ref={mapRef}                     
                                          center={[50,50]} 
                                          zoom={zoom}                    
                                          >
                                          <TileLayer
                                              attribution='&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
                                              url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"
                                          />            
                     
                                          <Marker position={regionCoord}>
                                            <Popup>{regionName}</Popup>
                                          </Marker>        
                                      </MapContainer>}                               
                                  </Grid>
                                  <Grid item xs={2}>
                                      <button onClick={handleFlyToClick}>Fly To</button>
                                  </Grid>
                              </Grid>
                          </React.Fragment>  
                      )
                      
                  }
                  
                  export default Map
                  

                  我正在使用 react-leaflet v3

                  I'm using react-leaflet v3

                  推薦答案

                  你需要使用一個包含你的按鈕的組件.要獲取地圖實(shí)例,請使用 MapContainerwhenCreated 屬性.我認(rèn)為 mapRef 在最新版本中不再有效.

                  You need to use a component which will include your button inside. To take the map instance use whenCreated prop of MapContainer. I think mapRef is not valid anymore with the latest version.

                  地圖容器:

                   const [map, setMap] = useState(null);
                  
                   <MapContainer
                        center={[50, 50]}
                        zoom={zoom}
                        style={{ height: "90vh" }}
                        whenCreated={setMap}
                    >
                  ...
                  
                  </MapContainer>
                  <FlyToButton />  // use the button here outside of the MapContainer
                  
                  ....
                  

                  使用按鈕及其事件創(chuàng)建組件

                  Create the component with the button and its event

                  function FlyToButton() {
                    const onClick = () => map.flyTo(regionCoord, zoom);
                      
                    return <button onClick={onClick}>Add marker on click</button>;
                  }
                  

                  演示

                  這篇關(guān)于Leaflet React在功能組件中獲取地圖實(shí)例的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

                  【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請聯(lián)系我們刪除處理,感謝您的支持!

                  相關(guān)文檔推薦

                  Check if a polygon point is inside another in leaflet(檢查一個多邊形點(diǎn)是否在傳單中的另一個內(nèi)部)
                  Changing leaflet markercluster icon color, inheriting the rest of the default CSS properties(更改傳單標(biāo)記群集圖標(biāo)顏色,繼承其余默認(rèn) CSS 屬性)
                  Trigger click on leaflet marker(觸發(fā)點(diǎn)擊傳單標(biāo)記)
                  How can I change the default loading tile color in LeafletJS?(如何更改 LeafletJS 中的默認(rèn)加載磁貼顏色?)
                  Add external geojson to leaflet layer(將外部geojson添加到傳單層)
                  Adding Leaflet layer control to sidebar(將 Leaflet 圖層控件添加到側(cè)邊欄)
                  • <bdo id='JKrEC'></bdo><ul id='JKrEC'></ul>
                    1. <i id='JKrEC'><tr id='JKrEC'><dt id='JKrEC'><q id='JKrEC'><span id='JKrEC'><b id='JKrEC'><form id='JKrEC'><ins id='JKrEC'></ins><ul id='JKrEC'></ul><sub id='JKrEC'></sub></form><legend id='JKrEC'></legend><bdo id='JKrEC'><pre id='JKrEC'><center id='JKrEC'></center></pre></bdo></b><th id='JKrEC'></th></span></q></dt></tr></i><div class="5dp777j" id='JKrEC'><tfoot id='JKrEC'></tfoot><dl id='JKrEC'><fieldset id='JKrEC'></fieldset></dl></div>

                      <small id='JKrEC'></small><noframes id='JKrEC'>

                            <legend id='JKrEC'><style id='JKrEC'><dir id='JKrEC'><q id='JKrEC'></q></dir></style></legend>
                            <tfoot id='JKrEC'></tfoot>
                              <tbody id='JKrEC'></tbody>

                            主站蜘蛛池模板: DAIKIN电磁阀-意大利ATOS电磁阀-上海乾拓贸易有限公司 | 派克防爆伺服电机品牌|国产防爆伺服电机|高低温伺服电机|杭州摩森机电科技有限公司 | 亿诺千企网-企业核心产品贸易 | ZHZ8耐压测试仪-上海胜绪电气有限公司 | 贴片电感_贴片功率电感_贴片绕线电感_深圳市百斯特电子有限公司 贴片电容代理-三星电容-村田电容-风华电容-国巨电容-深圳市昂洋科技有限公司 | 齿轮减速机_齿轮减速电机-VEMT蜗轮蜗杆减速机马达生产厂家瓦玛特传动瑞环机电 | 蓝米云-专注于高性价比香港/美国VPS云服务器及海外公益型免费虚拟主机 | MTK核心板|MTK开发板|MTK模块|4G核心板|4G模块|5G核心板|5G模块|安卓核心板|安卓模块|高通核心板-深圳市新移科技有限公司 | 中医治疗皮肤病_潍坊银康医院「山东」重症皮肤病救治平台 | 深圳市东信高科自动化设备有限公司 | 扬子叉车厂家_升降平台_电动搬运车|堆高车-扬子仓储叉车官网 | AGV叉车|无人叉车|AGV智能叉车|AGV搬运车-江西丹巴赫机器人股份有限公司 | 圣才学习网-考研考证学习平台,提供万种考研考证电子书、题库、视频课程等考试资料 | 宁波普瑞思邻苯二甲酸盐检测仪,ROHS2.0检测设备,ROHS2.0测试仪厂家 | Magnescale探规,Magnescale磁栅尺,Magnescale传感器,Magnescale测厚仪,Mitutoyo光栅尺,笔式位移传感器-苏州连达精密量仪有限公司 | 新能源汽车电池软连接,铜铝复合膜柔性连接,电力母排-容发智能科技(无锡)有限公司 | 代理记账_免费注册公司_营业执照代办_资质代办-【乐财汇】 | 全自动翻转振荡器-浸出式水平振荡器厂家-土壤干燥箱价格-常州普天仪器 | 定硫仪,量热仪,工业分析仪,马弗炉,煤炭化验设备厂家,煤质化验仪器,焦炭化验设备鹤壁大德煤质工业分析仪,氟氯测定仪 | 上海办公室设计_办公楼,写字楼装修_办公室装修公司-匠御设计 | 天津市能谱科技有限公司-专业的红外光谱仪_红外测油仪_紫外测油仪_红外制样附件_傅里叶红外光谱技术生产服务厂商 | 跨境物流_美国卡派_中大件运输_尾程派送_海外仓一件代发 - 广州环至美供应链平台 | 动库网动库商城-体育用品专卖店:羽毛球,乒乓球拍,网球,户外装备,运动鞋,运动包,运动服饰专卖店-正品运动品网上商城动库商城网 - 动库商城 | 软文发布平台 - 云软媒网络软文直编发布营销推广平台 | 企业微信营销_企业微信服务商_私域流量运营_艾客SCRM官网 | 石磨面粉机|石磨面粉机械|石磨面粉机组|石磨面粉成套设备-河南成立粮油机械有限公司 | 液压扳手-高品质液压扳手供应商 - 液压扳手, 液压扳手供应商, 德国进口液压拉马 | 通信天线厂家_室分八木天线_对数周期天线_天线加工厂_林创天线源头厂家 | 北京发电车出租-发电机租赁公司-柴油发电机厂家 - 北京明旺盛安机电设备有限公司 | 铁艺,仿竹,竹节,护栏,围栏,篱笆,栅栏,栏杆,护栏网,网围栏,厂家 - 河北稳重金属丝网制品有限公司 山东太阳能路灯厂家-庭院灯生产厂家-济南晟启灯饰有限公司 | 液氮罐_液氮容器_自增压液氮罐-北京君方科仪科技发展有限公司 | 武汉画册印刷厂家-企业画册印刷-画册设计印刷制作-宣传画册印刷公司 - 武汉泽雅印刷厂 | 刺绳_刀片刺网_刺丝滚笼_不锈钢刺绳生产厂家_安平县浩荣金属丝网制品有限公司-安平县浩荣金属丝网制品有限公司 | 卫生型双针压力表-高温防腐差压表-安徽康泰电气有限公司 | 船老大板材_浙江船老大全屋定制_船老大官网 | 猪I型/II型胶原-五克隆合剂-细胞冻存培养基-北京博蕾德科技发展有限公司 | 膜结构车棚|上海膜结构车棚|上海车棚厂家|上海膜结构公司 | 佛山商标注册_商标注册代理|专利注册申请_商标注册公司_鸿邦知识产权 | 农业四情_农业气象站_田间小型气象站_智慧农业气象站-山东风途物联网 | 成都亚克力制品,PVC板,双色板雕刻加工,亚克力门牌,亚克力标牌,水晶字雕刻制作-零贰捌广告 | 四川成都干燥设备_回转筒干燥机_脉冲除尘器_输送设备_热风炉_成都川工星科机电设备有限公司 |