mapbox setPaintProperty 方法是否处理表达式?

Does mapbox setPaintProperty method process expressions?

mapbox setPaintProperty 方法是否处理表达式?

map.setPaintProperty('places',
                'circle-radius',
                [
                    'interpolate',
                    ['linear'],
                    ['number', ["get", "Time", ['object', ["get", "Day", ['object', ["get", "Stats"]]]]]],
                    0, 4,
                    5, 24
                ]
            );

我收到一条错误消息:

Error: layers.places.paint.circle-radius[2][1][1]: Expected string but found number instead.

我发现错误令人困惑,因为我认为它应该返回一个数字。

我有点确定以下表达式在我实现 addLayer() 时使用它时有效

paint: {
            'circle-radius': [
                'interpolate',
                ['linear'],
                ['number', ["get", "Time", ['object', ["get", "Day", ['object', ["get", "Stats"]]]]]],
                0, 4,
                5, 24
            ],'circle-opacity': 0.8
        }

任何帮助都会很棒。

Does mapbox setPaintProperty method process expressions?

是的,我已经将 setPaintProperty 与插值表达式一起使用,没有出现任何问题。