空白屏幕 React-Leaflet

Kri*_*isH 1 leaflet reactjs react-leaflet

我正在设置一个反应传单地图,并且正在按照他们网站上的设置进行操作。但每当我编译该网站时,屏幕都是空白的并且没有错误。

应用程序.js:

import { StatusBar } from 'expo-status-bar';
import React from 'react';
import { StyleSheet, Text, View } from 'react-native';
import { MapContainer, TileLayer, Marker, Popup } from 'react-leaflet'
import './App.css'; 

export default function App() {
  return (
    <MapContainer 

    center={43.38621, -79.83713} 
    zoom="13" 
    scrollWheelZoom={false}
    >
      <TileLayer
        attribution='&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
        url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"
      />
    
  </MapContainer>
  );
}
Run Code Online (Sandbox Code Playgroud)

应用程序.css

.leaflet-container {
  width: 100%;
  height: 100vh;
}
Run Code Online (Sandbox Code Playgroud)

索引.js

import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';

ReactDOM.render(<App/>, document.getElementById('root'));
Run Code Online (Sandbox Code Playgroud)

小智 5

您还必须为 MapContainer 指定高度,而不仅仅是包含地图的 div。

另外,正如@kboul所说,中心坐标应该是一个数组:

<MapContainer 
  center={[43.38621, -79.83713]} 
  zoom="13" 
  scrollWheelZoom={false}
  style={{height: "100vh"}}
>
  <TileLayer
    attribution='&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
    url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"
  />

</MapContainer>
Run Code Online (Sandbox Code Playgroud)