我正在使用react-leaflet和react-leaflet-markercluster将React中的传单映射转换为钩子。除了使用 MarkerCluster 组件之外,一切都运行良好。该应用程序给出了这个错误:
Error: No context provided: useLeafletContext() can only be used in a descendant of <MapContainer>
我尝试做与此codesandbox中完全相同的事情,包括使用相同版本的软件包: https://codesandbox.io/s/9binx ?file=/src/styles.scss:168-206
无论是在现有项目还是全新项目(create-react-app)中。在现有项目中仍然出现同样的错误。新项目也是如此,但在从 package.json 中删除此项目时已修复:
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
Run Code Online (Sandbox Code Playgroud)
但这从来没有出现在现有的项目中。这是现有项目的 package.json:
{
"version": "0.1.0",
"private": true,
"dependencies": {
"@reduxjs/toolkit": "1.4.0",
"@sentry/react": "5.27.1",
"@sentry/tracing": "5.27.1",
"classnames": "^2.3.1",
"http-proxy-middleware": "1.0.6",
"leaflet": "^1.7.1",
"leaflet.markercluster": "^1.5.1",
"moment": "2.29.1",
"normalize.css": "8.0.1",
"rc-slider": "9.5.4",
"react": "17.0.1",
"react-app-polyfill": "2.0.0",
"react-datepicker": "3.3.0",
"react-dates": "21.8.0",
"react-dom": "17.0.1",
"react-html5-camera-photo": "1.5.4",
"react-leaflet": …Run Code Online (Sandbox Code Playgroud)