У меня есть следующий массив:
var SplitUpLevels = [
[ zoomLevel: 6, locationIDs: [1, 2, 3]],
[ zoomLevel: 10, locationIDs: [4, 5, 6]],
];
Я хочу скрыть некоторые значки на карте, основываясь на отдельном уровне масштабирования и только если идентификатор местоположения находится в массиве.Я получаю значения динамически из источника JSON.
Я уже пробовал простой цикл forEach без какого-либо успеха:
"icon-opacity" : [
"interpolate",
["linear"],
["zoom"],
0,
1,
SplitUpLevels.forEach(function(SplitUpLevel) {
SplitUpLevel.zoomlevel,
[ "match", ["get", "Id"], SplitUpLevel.locationIDs, 0, 0 ]
}),
… ]
Я либо получаю ответ
"icon-opacity: ожидается четное число аргументов."
или
"icon-opacity [5]: пары ввода / вывода для выражений" interpolate "должныбыть определены с использованием буквенных числовых значений (не вычисляемых выражений) для входных значений. "
Каков наилучший способ построения такого выражения на основе динамического источника.