You'd have to overlay a continent layer on your map and then conditionally style it based on your own color/continent mapping logic.
You can get the data (geojson) for the continent layer by searching for it.
const continentLayer = {
id: "continents",
type: "fill",
source: {
type: "geojson",
data: continents
},
paint: {
"fill-color": [
"match",
["get", "CONTINENT"],
"Asia",
"red",
"Europe",
"Green",
/* default */ "yellow"
]
}
};
<Layer {...continentLayer} />
Here's a codesandbox with a working example: https://codesandbox.io/s/color-xd1cw?file=/src/App.js (also take a look at continent.json)
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…