Mapbox использует функцию JavaScript внутри addLayer - PullRequest
0 голосов
/ 20 мая 2019

Я создал карту кластера с помощью Mapbox, и я хочу настроить номер кластера внутри карты.В этом примере у меня "{data}" внутри "text-field":, и я пытаюсь округлить это число.Например: 24124.324123123.

// Cluster counter  
  map.addLayer({
    id: "cluster-count",
    type: "symbol",
    source: "sites",
    filter: ["has", "point_count"],
    layout: {
      "text-field": "{data}",
      "text-size": 12,
    },
    paint: {
      "text-color": "red",
    }
 });

Я пробовал другое решение, например: "text-field": parseFloat("{data}").toFixed(2),, но оно не работает.

Как я могу использовать некоторую функцию JavaScript, чтобы вычислить результат работы слоя?

1 Ответ

0 голосов
/ 04 июня 2019

Как я могу использовать некоторую функцию JavaScript для определения стоимости вывода слоя?

Короткий ответ на этот вопрос: ты не можешь. Слои статически определены, и невозможно выполнять в них какие-либо функции так, как вы описываете.

Однако , выражения стиля Mapbox позволяют вам достичь этого. Я настоятельно рекомендую вам ознакомиться с документацией, чтобы увидеть, что возможно: https://docs.mapbox.com/mapbox-gl-js/style-spec/#expressions

В частности, это руководство должно помочь вам ознакомиться с ними: https://docs.mapbox.com/help/tutorials/mapbox-gl-js-expressions/


⚠️ Отказ от ответственности: в настоящее время я работаю в Mapbox ⚠️

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...