首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何向我的react-map-gl添加源和图层

如何向我的react-map-gl添加源和图层
EN

Stack Overflow用户
提问于 2020-12-14 09:30:44
回答 1查看 1.3K关注 0票数 0

我试图在我的地图上添加源和图层,但即使地图正在渲染,它也不会渲染。但每当我将源类型更改为向量时,它就会起作用,但我想使用的类型是geojson(为了使用多边形和折线),但它似乎不起作用。

我不知道我做错了什么,我已经尝试了几个小时来解决这个问题,甚至阅读了文档,我仍然不知道我做错了什么。

下面是代码。

代码语言:javascript
运行
复制
import ReactMapGL, {Source, Layer} from 'react-map-gl'

      const data = {
        type: "Feature",
        geometry: {
        type: "Polygon",
        coordinates: [
        [
        -107.814303,
        37.935657
        ],
        [
        -107.814424,
        37.936094
        ],
        [
        -107.816288,
        37.936826
        ],
        [
        -107.814644,
        37.940931
        ],
        [
        -107.80993,
        37.939892
        ],
        [
        -107.807686,
        37.939376
        ],
        [
        -107.80932,
        37.935416
        ],
        [
        -107.809507,
        37.935014
        ],
        [
        -107.810191,
        37.934835
        ],
        [
        -107.810765,
        37.934708
        ],
        [
        -107.811377,
        37.934732
        ],
        [
        -107.813902,
        37.935372
        ],
        [
        -107.814303,
        37.935657
        ]
        ]
        }
        }


       <ReactMapGL
       mapStyle='mapbox://styles/mapbox/dark-v10'
       mapboxApiAccessToken={accessKey}
       onViewportChange={viewport => {
        setViewport(viewport)
    }}
       {...viewport}
       >
       <Source id="route" type="geojson" data={data} />
       <Layer
            id="route"
            type="line"
            source="route"
            paint={{
              'line-color': "green"
            }} />

       </ReactMapGL> }

提前感谢您的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-20 15:15:50

也许这就是你要找的。

代码语言:javascript
运行
复制
<Layer
  {...{
    id: "zone",
    type: "fill",
    source: {
      type: "geojson",
      data: {
        type: "Feature",
        geometry: {
          type: "Polygon",
          coordinates: [
            [
              [-118.5687542, 34.0412107],
              [-118.4082538, 33.8727824],
              [-118.3717758, 33.8729961],
              [-118.3688574, 33.9671539],
              [-118.3363247, 33.9894178],
              [-118.2811303, 34.0096732],
              [-118.1707964, 34.0336193],
              [-118.0576271, 34.0671419],
              [-118.0600304, 34.1575335],
              [-118.1163354, 34.2083719],
              [-118.5152764, 34.2268251],
              [-118.5687542, 34.0412107],
            ],
          ],
        },
      },
    },
    layout: {},
    paint: {
      "fill-color": "rgb(5, 30, 52)",
      "fill-opacity": 0.1,
    },
  }}
/>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65282539

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档