Skip to content

Commit 289c7c6

Browse files
committed
update 等级和标签图层优化, review by qiwei
1 parent 08413d8 commit 289c7c6

File tree

5 files changed

+19
-41
lines changed

5 files changed

+19
-41
lines changed

dist/mapboxgl/iclient-mapboxgl-react.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18198,7 +18198,7 @@ if (true) {
1819818198
/***/ (function(module, exports, __webpack_require__) {
1819918199

1820018200
"use strict";
18201-
/** @license React v16.11.0
18201+
/** @license React v16.10.2
1820218202
* react-is.production.min.js
1820318203
*
1820418204
* Copyright (c) Facebook, Inc. and its affiliates.
@@ -21615,7 +21615,7 @@ var UniqueThemeLayer_dec,UniqueThemeLayer_class,UniqueThemeLayer_class2,UniqueTh
2161521615
// CONCATENATED MODULE: ./src/mapboxgl/web-map/layer/ranksymbol-theme/RanksymbolThemeLayerViewModel.js
2161621616
var RanksymbolThemeLayerViewModel_RanksymbolThemeLayerViewModel=/*#__PURE__*/function(_mapboxgl$Evented){_inherits(RanksymbolThemeLayerViewModel,_mapboxgl$Evented);function RanksymbolThemeLayerViewModel(map,themeProps){var _this;_classCallCheck(this,RanksymbolThemeLayerViewModel);_this=_possibleConstructorReturn(this,_getPrototypeOf(RanksymbolThemeLayerViewModel).call(this));_this.map=map;var layerName=themeProps.layerName,options=themeProps.options,symbolType=themeProps.symbolType,layerId=themeProps.layerId,data=themeProps.data;_this.layerName=layerName||layerId;_this.symbolType=symbolType||'Circle';options.id=options.id||layerId;_this.options=options;_this.layerId=layerId;_this.data=data||[];_this._init();return _this;}_createClass(RanksymbolThemeLayerViewModel,[{key:"_init",value:function _init(){this.themeLayer=new mapbox_gl_enhance_js_default.a.supermap.RankSymbolThemeLayer(this.layerName,this.symbolType,this.options);this.map.addLayer(this.themeLayer);this.themeLayer.addFeatures(this.data);}}]);return RanksymbolThemeLayerViewModel;}(mapbox_gl_enhance_js_default.a.Evented);
2161721617
// CONCATENATED MODULE: ./src/mapboxgl/web-map/layer/ranksymbol-theme/RanksymbolThemeLayer.tsx
21618-
var RanksymbolThemeLayer_dec,RanksymbolThemeLayer_class,RanksymbolThemeLayer_temp;var RanksymbolThemeLayer_RanksymbolThemeLayer=(RanksymbolThemeLayer_dec=compose_default()(mapGetter,withLayer),RanksymbolThemeLayer_dec(RanksymbolThemeLayer_class=(RanksymbolThemeLayer_temp=/*#__PURE__*/function(_Component){_inherits(RanksymbolThemeLayer,_Component);function RanksymbolThemeLayer(){var _getPrototypeOf2;var _this;_classCallCheck(this,RanksymbolThemeLayer);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}_this=_possibleConstructorReturn(this,(_getPrototypeOf2=_getPrototypeOf(RanksymbolThemeLayer)).call.apply(_getPrototypeOf2,[this].concat(args)));_this.viewModel=void 0;return _this;}_createClass(RanksymbolThemeLayer,[{key:"loaded",value:function loaded(map){this.viewModel=new RanksymbolThemeLayerViewModel_RanksymbolThemeLayerViewModel(map,this.props);this.props.onLoad(this.viewModel.themeLayer,map);}},{key:"render",value:function render(){return null;}}]);return RanksymbolThemeLayer;}(external_root_React_commonjs_React_commonjs2_React_amd_React_["Component"]),RanksymbolThemeLayer_temp))||RanksymbolThemeLayer_class);
21618+
var RanksymbolThemeLayer_dec,RanksymbolThemeLayer_class,RanksymbolThemeLayer_temp;var RanksymbolThemeLayer_RanksymbolThemeLayer=(RanksymbolThemeLayer_dec=compose_default()(mapGetter,withLayer),RanksymbolThemeLayer_dec(RanksymbolThemeLayer_class=(RanksymbolThemeLayer_temp=/*#__PURE__*/function(_Component){_inherits(RanksymbolThemeLayer,_Component);function RanksymbolThemeLayer(){var _getPrototypeOf2;var _this;_classCallCheck(this,RanksymbolThemeLayer);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}_this=_possibleConstructorReturn(this,(_getPrototypeOf2=_getPrototypeOf(RanksymbolThemeLayer)).call.apply(_getPrototypeOf2,[this].concat(args)));_this.viewModel=void 0;return _this;}_createClass(RanksymbolThemeLayer,[{key:"loaded",value:function loaded(map){var onLoad=this.props.onLoad;this.viewModel=new RanksymbolThemeLayerViewModel_RanksymbolThemeLayerViewModel(map,this.props);isFunction(onLoad)&&onLoad(this.viewModel.themeLayer,map);}},{key:"render",value:function render(){return null;}}]);return RanksymbolThemeLayer;}(external_root_React_commonjs_React_commonjs2_React_amd_React_["Component"]),RanksymbolThemeLayer_temp))||RanksymbolThemeLayer_class);
2161921619
// CONCATENATED MODULE: ./src/mapboxgl/web-map/layer/range-theme/RangeThemeLayerViewModel.js
2162021620
var RangeThemeLayerViewModel_RangeThemeLayerViewModel=/*#__PURE__*/function(_mapboxgl$Evented){_inherits(RangeThemeLayerViewModel,_mapboxgl$Evented);function RangeThemeLayerViewModel(map,themeProps){var _this;_classCallCheck(this,RangeThemeLayerViewModel);_this=_possibleConstructorReturn(this,_getPrototypeOf(RangeThemeLayerViewModel).call(this));var layerName=themeProps.layerName,options=themeProps.options,layerId=themeProps.layerId,data=themeProps.data;_this.map=map;_this.layerName=layerName||layerId;options.id=options.id||layerId;_this.options=options;_this.layerId=layerId;_this.data=data||[];_this._init();return _this;}_createClass(RangeThemeLayerViewModel,[{key:"_init",value:function _init(){this.themeLayer=new mapbox_gl_enhance_js_default.a.supermap.RangeThemeLayer(this.layerName,this.options);this.map.addLayer(this.themeLayer);if(this.data&&this.data.length){this.setData(this.data);}}},{key:"setData",value:function setData(data){this.themeLayer.addFeatures(data);}}]);return RangeThemeLayerViewModel;}(mapbox_gl_enhance_js_default.a.Evented);
2162121621
// CONCATENATED MODULE: ./src/mapboxgl/web-map/layer/range-theme/RangeThemeLayer.tsx
@@ -21661,9 +21661,9 @@ var DeckglLayerViewModel_DeckglLayerViewModel=/*#__PURE__*/function(_mapboxgl$Ev
2166121661
// CONCATENATED MODULE: ./src/mapboxgl/web-map/layer/deckgl/DeckglLayer.tsx
2166221662
var DeckglLayer_dec,DeckglLayer_class,DeckglLayer_temp;var LAYER_TYPE_ID_LIST=['scatter-plot','path-layer','polygon-layer','arc-layer','hexagon-layer','screen-grid-layer'];var DeckglLayer_DeckglLayer=(DeckglLayer_dec=compose_default()(mapGetter,withLayer),DeckglLayer_dec(DeckglLayer_class=(DeckglLayer_temp=/*#__PURE__*/function(_Component){_inherits(DeckglLayer,_Component);function DeckglLayer(){var _getPrototypeOf2;var _this;_classCallCheck(this,DeckglLayer);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}_this=_possibleConstructorReturn(this,(_getPrototypeOf2=_getPrototypeOf(DeckglLayer)).call.apply(_getPrototypeOf2,[this].concat(args)));_this.viewModel=void 0;return _this;}_createClass(DeckglLayer,[{key:"loaded",value:function loaded(map){var _this2=this;var matchIndex=LAYER_TYPE_ID_LIST.findIndex(function(item){return item===_this2.props.layerType;});if(matchIndex>-1){this.viewModel=new DeckglLayerViewModel_DeckglLayerViewModel(map,this.props);}}},{key:"render",value:function render(){return null;}}]);return DeckglLayer;}(external_root_React_commonjs_React_commonjs2_React_amd_React_["Component"]),DeckglLayer_temp))||DeckglLayer_class);
2166321663
// CONCATENATED MODULE: ./src/mapboxgl/web-map/layer/label-theme/LabelThemeLayerViewModel.js
21664-
var LabelThemeLayerViewModel_LabelThemeLayerViewModel=/*#__PURE__*/function(_mapboxgl$Evented){_inherits(LabelThemeLayerViewModel,_mapboxgl$Evented);function LabelThemeLayerViewModel(map,themeProps){var _this;_classCallCheck(this,LabelThemeLayerViewModel);_this=_possibleConstructorReturn(this,_getPrototypeOf(LabelThemeLayerViewModel).call(this));var layerName=themeProps.layerName,options=themeProps.options,layerId=themeProps.layerId,data=themeProps.data;_this.map=map;_this.layerName=layerName||layerId;_this.options=options;_this.layerId=layerId;_this.data=data||[];_this._init();return _this;}_createClass(LabelThemeLayerViewModel,[{key:"_init",value:function _init(){this.themeLayer=new mapbox_gl_enhance_js_default.a.supermap.LabelThemeLayer(this.layerName,this.options);this.map.addLayer(this.themeLayer);this.themeLayer.addFeatures(this.data);}}]);return LabelThemeLayerViewModel;}(mapbox_gl_enhance_js_default.a.Evented);
21664+
var LabelThemeLayerViewModel_LabelThemeLayerViewModel=/*#__PURE__*/function(_mapboxgl$Evented){_inherits(LabelThemeLayerViewModel,_mapboxgl$Evented);function LabelThemeLayerViewModel(map,themeProps){var _this;_classCallCheck(this,LabelThemeLayerViewModel);_this=_possibleConstructorReturn(this,_getPrototypeOf(LabelThemeLayerViewModel).call(this));var layerName=themeProps.layerName,options=themeProps.options,layerId=themeProps.layerId,data=themeProps.data;_this.map=map;_this.layerName=layerName||layerId;options.id=options.id||layerId;_this.options=options;_this.layerId=layerId;_this.data=data||[];_this._init();return _this;}_createClass(LabelThemeLayerViewModel,[{key:"_init",value:function _init(){this.themeLayer=new mapbox_gl_enhance_js_default.a.supermap.LabelThemeLayer(this.layerName,this.options);this.map.addLayer(this.themeLayer);this.themeLayer.addFeatures(this.data);}}]);return LabelThemeLayerViewModel;}(mapbox_gl_enhance_js_default.a.Evented);
2166521665
// CONCATENATED MODULE: ./src/mapboxgl/web-map/layer/label-theme/LabelThemeLayer.tsx
21666-
var LabelThemeLayer_dec,LabelThemeLayer_class,LabelThemeLayer_class2,LabelThemeLayer_temp;var LabelThemeLayer_LabelThemeLayer=(LabelThemeLayer_dec=compose_default()(mapGetter,withLayer),LabelThemeLayer_dec(LabelThemeLayer_class=(LabelThemeLayer_temp=LabelThemeLayer_class2=/*#__PURE__*/function(_Component){_inherits(LabelThemeLayer,_Component);function LabelThemeLayer(){var _getPrototypeOf2;var _this;_classCallCheck(this,LabelThemeLayer);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}_this=_possibleConstructorReturn(this,(_getPrototypeOf2=_getPrototypeOf(LabelThemeLayer)).call.apply(_getPrototypeOf2,[this].concat(args)));_this.viewModel=void 0;return _this;}_createClass(LabelThemeLayer,[{key:"loaded",value:function loaded(map){this.viewModel=new LabelThemeLayerViewModel_LabelThemeLayerViewModel(map,this.props);this.props.onLoad&&this.props.onLoad(this.viewModel.themeLayer,map);}},{key:"render",value:function render(){return null;}}]);return LabelThemeLayer;}(external_root_React_commonjs_React_commonjs2_React_amd_React_["Component"]),LabelThemeLayer_class2.defaultProps={options:{}},LabelThemeLayer_temp))||LabelThemeLayer_class);
21666+
var LabelThemeLayer_dec,LabelThemeLayer_class,LabelThemeLayer_class2,LabelThemeLayer_temp;var LabelThemeLayer_LabelThemeLayer=(LabelThemeLayer_dec=compose_default()(mapGetter,withLayer),LabelThemeLayer_dec(LabelThemeLayer_class=(LabelThemeLayer_temp=LabelThemeLayer_class2=/*#__PURE__*/function(_Component){_inherits(LabelThemeLayer,_Component);function LabelThemeLayer(){var _getPrototypeOf2;var _this;_classCallCheck(this,LabelThemeLayer);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}_this=_possibleConstructorReturn(this,(_getPrototypeOf2=_getPrototypeOf(LabelThemeLayer)).call.apply(_getPrototypeOf2,[this].concat(args)));_this.viewModel=void 0;return _this;}_createClass(LabelThemeLayer,[{key:"loaded",value:function loaded(map){var onLoad=this.props.onLoad;this.viewModel=new LabelThemeLayerViewModel_LabelThemeLayerViewModel(map,this.props);isFunction(onLoad)&&onLoad(this.viewModel.themeLayer,map);}},{key:"render",value:function render(){return null;}}]);return LabelThemeLayer;}(external_root_React_commonjs_React_commonjs2_React_amd_React_["Component"]),LabelThemeLayer_class2.defaultProps={options:{}},LabelThemeLayer_temp))||LabelThemeLayer_class);
2166721667
// CONCATENATED MODULE: ./src/mapboxgl/web-map/layer/heatmap/HeatmapLayerViewModel.js
2166821668
/**
2166921669
* @class HeatMapLayerViewModel

dist/mapboxgl/iclient-mapboxgl-react.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/component/components_deckgl_react.html

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,7 @@
5858
};
5959

6060
widgets.loader.showLoader('data loading...');
61-
var _this = this,
62-
popup,
63-
map;
61+
var popup, map;
6462

6563
function mapIsLoaded(e) {
6664
map = e.map;

examples/component/components_labeltheme_react.html

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -129,10 +129,6 @@
129129
}
130130
]
131131
};
132-
133-
function mapIsLoaded(e) {
134-
map = e.map;
135-
}
136132
function updateInfoView(feature, themeLayer) {
137133
if (!feature && popup) {
138134
removePopup();
@@ -293,15 +289,10 @@
293289
var latLng = latLng.split(',');
294290
return [parseFloat(latLng[0]), parseFloat(latLng[1])];
295291
}
296-
function layerLoaded(themeLayer) {
297-
themeLayer.on(
298-
'mousemove',
299-
function(e) {
300-
handleMouseOver(themeLayer, e);
301-
}.bind(this)
302-
);
303-
}
304-
function handleMouseOver(themeLayer, e) {
292+
function handleMouseOver(params) {
293+
var e = params.mapboxEvent;
294+
map = params.map;
295+
var themeLayer = map.getLayer(params.layerId);
305296
if (e.target && e.target.refDataID) {
306297
var fid = e.target.refDataID;
307298
var fea = themeLayer.getFeatureById(fid);
@@ -317,12 +308,12 @@
317308
}
318309

319310
ReactDOM.render(
320-
<SmWebMap mapOptions={mapOptions} onLoad={mapIsLoaded}>
311+
<SmWebMap mapOptions={mapOptions}>
321312
<SmLabelThemeLayer
322313
options={themeOptions}
323314
layerName={'LabelThemeLayer'}
324315
data={features}
325-
onLoad={layerLoaded}
316+
onMousemove={handleMouseOver}
326317
/>
327318
</SmWebMap>,
328319
document.getElementById('main')

examples/component/components_ranksymboltheme_react.html

Lines changed: 7 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,7 @@
4141
var SmWebMap = window.SuperMap.Components.SmWebMap;
4242
var SmRanksymbolThemeLayer = window.SuperMap.Components.SmRanksymbolThemeLayer;
4343

44-
var features = [],
45-
popup,
46-
map;
44+
var features = [], popup, map;
4745
for (var i = 0, len = chinaConsumptionLevel.length; i < len; i++) {
4846
// 省居民消费水平(单位:元)信息
4947
var provinceInfo = chinaConsumptionLevel[i];
@@ -99,19 +97,10 @@
9997
circleHoverStyle: { fillOpacity: 1 }
10098
}
10199
};
102-
103-
function mapIsLoaded(e) {
104-
map = e.map;
105-
}
106-
function layerLoaded(themeLayer) {
107-
themeLayer.on(
108-
'mousemove',
109-
function(e) {
110-
return showInfoWin(themeLayer, e);
111-
}.bind(this)
112-
);
113-
}
114-
function showInfoWin(themeLayer, e) {
100+
function showInfoWin(params) {
101+
var e = params.mapboxEvent;
102+
map = params.map;
103+
var themeLayer = map.getLayer(params.layerId);
115104
// e.target 是图形对象,即数据的可视化对象。
116105
// 图形对象的 refDataID 属性是数据(feature)的 id 属性,它指明图形对象是由那个数据制作而来;
117106
// 图形对象的 dataInfo 属性是图形对象表示的具体数据,他有两个属性,field、R 和 value;
@@ -156,13 +145,13 @@
156145
}
157146

158147
ReactDOM.render(
159-
<SmWebMap mapOptions={mapOptions} onLoad={mapIsLoaded}>
148+
<SmWebMap mapOptions={mapOptions}>
160149
<SmRanksymbolThemeLayer
161150
options={themeOptions}
162151
layerName={'RankSymbolThemeLayer'}
163152
data={features}
164153
chartsType={'Circle'}
165-
onLoad={layerLoaded}
154+
onMousemove={showInfoWin}
166155
/>
167156
</SmWebMap>,
168157
document.getElementById('main')

0 commit comments

Comments
 (0)