@vtx/ol-map 1.0.78 → 1.0.80
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -417,6 +417,7 @@ var FeatureLayer = /*#__PURE__*/function (_Vector) {
|
|
|
417
417
|
value: function getMarkerOptions(feature, style) {
|
|
418
418
|
var _feature$get4;
|
|
419
419
|
var icon = (style === null || style === void 0 ? void 0 : style.icon) || style;
|
|
420
|
+
var image = style === null || style === void 0 ? void 0 : style.image;
|
|
420
421
|
var color = (style === null || style === void 0 ? void 0 : style.color) || '#2491fc';
|
|
421
422
|
var _this$_options = this._options,
|
|
422
423
|
cluster = _this$_options.cluster,
|
|
@@ -427,10 +428,11 @@ var FeatureLayer = /*#__PURE__*/function (_Vector) {
|
|
|
427
428
|
var isFun = (0, _isFunction["default"])(style);
|
|
428
429
|
var data = {};
|
|
429
430
|
if (isFun) {
|
|
430
|
-
var _data, _data2, _data3, _data4;
|
|
431
|
+
var _data, _data2, _data3, _data4, _data5, _data6;
|
|
431
432
|
data = style(feature) || {};
|
|
432
433
|
icon = ((_data = data) === null || _data === void 0 || (_data = _data.style) === null || _data === void 0 ? void 0 : _data.icon) || ((_data2 = data) === null || _data2 === void 0 ? void 0 : _data2.icon) || icon;
|
|
433
434
|
color = ((_data3 = data) === null || _data3 === void 0 || (_data3 = _data3.style) === null || _data3 === void 0 ? void 0 : _data3.color) || ((_data4 = data) === null || _data4 === void 0 ? void 0 : _data4.color) || color;
|
|
435
|
+
image = ((_data5 = data) === null || _data5 === void 0 || (_data5 = _data5.style) === null || _data5 === void 0 ? void 0 : _data5.image) || ((_data6 = data) === null || _data6 === void 0 ? void 0 : _data6.image) || image;
|
|
434
436
|
}
|
|
435
437
|
var size = ((_feature$get4 = feature.get('features')) === null || _feature$get4 === void 0 ? void 0 : _feature$get4.length) || 0;
|
|
436
438
|
var P = {
|
|
@@ -455,7 +457,7 @@ var FeatureLayer = /*#__PURE__*/function (_Vector) {
|
|
|
455
457
|
}
|
|
456
458
|
}, (cluster === null || cluster === void 0 ? void 0 : cluster.iconOptions) || {}) : {}
|
|
457
459
|
}, size > 1 && (cluster === null || cluster === void 0 ? void 0 : cluster.style)), {}, {
|
|
458
|
-
image: size > 1 ? '' :
|
|
460
|
+
image: size > 1 ? '' : image || ''
|
|
459
461
|
}),
|
|
460
462
|
point_cluster: _objectSpread({
|
|
461
463
|
// 聚合点位
|
|
@@ -486,8 +488,8 @@ var FeatureLayer = /*#__PURE__*/function (_Vector) {
|
|
|
486
488
|
if (label) {
|
|
487
489
|
var _Object$keys;
|
|
488
490
|
if ((_Object$keys = Object.keys(data)) !== null && _Object$keys !== void 0 && _Object$keys.includes('customText')) {
|
|
489
|
-
var
|
|
490
|
-
_style.text = (
|
|
491
|
+
var _data7;
|
|
492
|
+
_style.text = (_data7 = data) === null || _data7 === void 0 ? void 0 : _data7.customText;
|
|
491
493
|
} else {
|
|
492
494
|
_style.text = this.getLabelStyle(feature, color);
|
|
493
495
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureLayer.js","names":["_layer","require","_ol","_source","_renderer","_interopRequireDefault","_style3","_isFunction","_createFeatureCollection","_isObject","_encryptParams","_excluded","obj","__esModule","_typeof","o","Symbol","iterator","constructor","prototype","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","minLen","_arrayLikeToArray","n","Object","toString","call","slice","name","Array","from","test","iter","isArray","len","length","i","arr2","ownKeys","e","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","key","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","_classCallCheck","instance","Constructor","_defineProperties","props","descriptor","configurable","writable","_toPropertyKey","_createClass","protoProps","staticProps","_get","Reflect","get","bind","property","receiver","base","_superPropBase","desc","value","_inherits","subClass","superClass","create","_setPrototypeOf","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","construct","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","set","_set","isStrict","s","object","hasOwnProperty","getPrototypeOf","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","FeatureLayer","_Vector","_super","options","_thisSuper","_this","url","params","data","dataField","features","sourceOptions","label","labelField","point","cluster","template","autoRefresh","method","layerControl","show","style","group","iconOptions","afterGetData","legend","viewOnly","encrypt","valueField","map","other","VectorSource","defaultShow","f","size","Text","text","font","fill","Fill","color","padding","justify","textAlign","textBaseline","offsetY","offsetX","feature","_options","isCluster","_feature$get","values_","backgroundFill","backgroundStroke","Stroke","width","inited","init","loadUrlData","loadData","setVisible","val","setStyle","getStyleByMode","setClusterMode","setShow","setClusterSource","_this2","resolution","_this2$group","_this2$_options","otherStyle","v","styles","isFunction","_styles","renderer","Marker","getMarkerOptions","Style","_style","type","getSimpleStyle","Simple","isObject","_style2","mode","render","_feature$get2","getMultipleStyle","UniqueValue","_feature$get3","ClassBreaks","image","Circle","radius","stroke","_render","_render$style","_render$style2","icon","_render$render","_this3","_feature$get4","_this$_options","isFun","_data","_data2","_data3","_data4","P","marker","marker_cluster","hideFooter","info","fontSize","point_cluster","_Object$keys","includes","_data5","customText","getLabelStyle","getClusterTextStyle","_this4","_features","showCluster","clusterSource","Cluster","createCluster","Feature","geometry","layerKey","setProperties","setSource","refresh","_this5","getDataByHttpByParams","field","then","new_features","newFeatures","getFeatureByFieldValue","id","getSource","addFeatures","changed","clear","createGeoJson","_this6","encryptParams","loadFeatures","getFeatures","find","getFeaturesByFieldValueOpera","_ref","_this7","_ref$operation","operation","Promise","resolve","reject","fun","Function","concat","err","_v$values_$field","_v$values_$field2","_v$values_$field3","getMap","setGroup","_this$_features","setVisibleByGroup","visible","layers","onChange","Vector","_default","exports"],"sources":["feature-layer/FeatureLayer.js"],"sourcesContent":["import { Vector } from 'ol/layer';\r\nimport { Feature } from 'ol';\r\nimport { Vector as VectorSource, Cluster } from 'ol/source';\r\nimport renderer from '../renderer';\r\nimport { Fill, Style, Text, Stroke, Circle } from 'ol/style';\r\nimport isFunction from '../_util/isFunction';\r\nimport { getDataByHttpByParams, createGeoJson } from './createFeatureCollection';\r\nimport isObject from '../_util/isObject';\r\nimport encryptParams from \"../_util/encryptParams\";\r\n\r\nclass FeatureLayer extends Vector {\r\n constructor(options) {\r\n const {\r\n url,\r\n params,\r\n data,\r\n dataField,\r\n features,\r\n sourceOptions,\r\n key,\r\n name,\r\n label,\r\n labelField,\r\n point,\r\n cluster,\r\n template,\r\n autoRefresh,\r\n method,\r\n layerControl,\r\n show,\r\n style,\r\n group,\r\n iconOptions,\r\n afterGetData,\r\n legend,\r\n viewOnly,\r\n encrypt,\r\n valueField,\r\n map,\r\n ...other\r\n } = options;\r\n\r\n const props = {\r\n ...other,\r\n };\r\n props.source =\r\n props.source ||\r\n new VectorSource({\r\n features,\r\n ...sourceOptions,\r\n });\r\n\r\n let defaultShow = show;\r\n if (group?.length) {\r\n defaultShow = false;\r\n\r\n if (show) {\r\n group.map(f => {\r\n if (f.show) {\r\n defaultShow = true;\r\n }\r\n });\r\n }\r\n }\r\n\r\n super(props);\r\n super.show = show;\r\n // 参数\r\n this._options = options;\r\n\r\n // 地图\r\n this.map = map;\r\n\r\n // 接口地址\r\n this.url = url;\r\n\r\n // 接口地址请求类型\r\n this.method = method;\r\n\r\n // 接口查询参数\r\n this.params = params;\r\n\r\n // 图层标识\r\n this.key = key;\r\n\r\n // 图层名称\r\n this.name = name;\r\n\r\n // 标签\r\n this.label = label;\r\n\r\n // 标签字段\r\n this.labelField = labelField;\r\n\r\n // 聚合\r\n this.cluster = cluster;\r\n\r\n // 海量点\r\n this.point = point;\r\n\r\n // 自动刷新标识\r\n this.autoRefresh = autoRefresh;\r\n\r\n // 模版内容\r\n this.template = template;\r\n\r\n // 图层控制\r\n this.layerControl = layerControl;\r\n\r\n // 过滤\r\n this.group = group;\r\n\r\n // 处理获取的数据\r\n this.afterGetData = afterGetData;\r\n\r\n // 数据查询字段\r\n this.valueField = valueField;\r\n\r\n // 图例\r\n this.legend = legend;\r\n\r\n // 样式\r\n this.style = style;\r\n\r\n // 数据\r\n this.data = data;\r\n\r\n // 数据取值字段\r\n this.dataField = dataField || 'geometryInfo';\r\n\r\n // 仅展示\r\n this.viewOnly = viewOnly;\r\n\r\n // 是否初始化\r\n this.inited = false;\r\n\r\n // 加密\r\n this.encrypt = encrypt;\r\n\r\n // 默认是否展示\r\n if (defaultShow) {\r\n this.init()\r\n }\r\n }\r\n\r\n // 初始化数据\r\n init() {\r\n // 是否存在地址\r\n if (this.url) {\r\n // 执行\r\n this.loadUrlData(this.url, this.params, this.method);\r\n }\r\n\r\n // 直接加载数据\r\n if (this.data) {\r\n // 执行\r\n this.loadData(this.data);\r\n }\r\n\r\n this.inited = true;\r\n }\r\n\r\n // 重写父类的属性访问器\r\n get show() {\r\n return super.show;\r\n }\r\n\r\n set show(value) {\r\n this.setVisible(value);\r\n }\r\n\r\n set label(val) {\r\n this._options.label = val;\r\n this.setStyle(this.getStyleByMode());\r\n }\r\n\r\n set point(val) {\r\n this._options.point = val;\r\n this.setStyle(this.getStyleByMode());\r\n }\r\n\r\n set cluster(val) {\r\n this.setClusterMode(val);\r\n }\r\n\r\n setShow(value) {\r\n this.show = value;\r\n this.setVisible(value);\r\n }\r\n\r\n setClusterMode(val) {\r\n this._options.cluster = val;\r\n this.setClusterSource(val);\r\n this.setStyle(this.getStyleByMode());\r\n }\r\n\r\n getClusterTextStyle = size => {\r\n return new Text({\r\n text: String(size),\r\n font: '18px Calibri,sans-serif',\r\n fill: new Fill({\r\n color: '#fff',\r\n }),\r\n padding: [0, 0, 0, 0],\r\n justify: 'center',\r\n textAlign: 'center',\r\n textBaseline: 'middle',\r\n offsetY: -22,\r\n offsetX: 16,\r\n });\r\n };\r\n\r\n getLabelStyle = (feature, color) => {\r\n let { labelField } = this._options;\r\n\r\n // 判断是否是聚合点位\r\n if (feature.isCluster) {\r\n const size = feature.get('features')?.length || 0;\r\n if (size !== 1) {\r\n return;\r\n }\r\n }\r\n if (labelField) {\r\n return new Text({\r\n text: feature.values_[labelField] || '-',\r\n font: '12px Calibri,sans-serif',\r\n fill: new Fill({\r\n color,\r\n }),\r\n backgroundFill: new Fill({\r\n color: '#fff',\r\n }),\r\n backgroundStroke: new Stroke({\r\n color,\r\n width: 1,\r\n }),\r\n padding: [4, 2, 2, 4],\r\n justify: 'center',\r\n textBaseline: 'middle',\r\n offsetY: 12,\r\n });\r\n }\r\n }\r\n\r\n getStyleByMode() {\r\n return (feature, resolution) => {\r\n let { style, cluster, otherStyle } = this._options;\r\n let show = true;\r\n\r\n this.group?.map(v => {\r\n if (v.filter(feature.values_)) {\r\n style = v.style || style;\r\n if (v.hasOwnProperty('show') && !v.show) {\r\n show = false;\r\n }\r\n }\r\n });\r\n if (!show) {\r\n return null;\r\n }\r\n\r\n const styles = [];\r\n\r\n if (otherStyle) {\r\n if (isFunction(otherStyle)) {\r\n const _styles = otherStyle(feature, resolution);\r\n if (_styles) {\r\n if (Array.isArray(styles)) {\r\n styles.push(..._styles)\r\n } else {\r\n styles.push(_styles)\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (style) {\r\n if (typeof style === 'string' || (isFunction(style) && cluster)) {\r\n styles.push(new renderer.Marker({ ...this.getMarkerOptions(feature, style) }));\r\n return styles;\r\n } else if (style instanceof Style) {\r\n // 判断是否为 ol Style\r\n styles.push(style);\r\n return styles;\r\n } else if (isFunction(style)) {\r\n // 判断是否为自定义函数渲染\r\n\r\n let _style = style(feature);\r\n if (_style?.type && _style?.style) {\r\n const options = this.getSimpleStyle(feature, _style);\r\n styles.push(renderer.Simple(options));\r\n return styles;\r\n }\r\n\r\n styles.push(_style);\r\n return styles;\r\n } else if (isObject(style)) {\r\n let { mode } = style;\r\n if (mode) {\r\n if (mode === 'Simple') {\r\n const options = this.getSimpleStyle(feature, style.render);\r\n styles.push(renderer.Simple(options));\r\n return styles;\r\n }\r\n\r\n if (mode === 'UniqueValue') {\r\n const size = feature.get('features')?.length || 0;\r\n if (size > 1) {\r\n const options = this.getSimpleStyle(\r\n feature,\r\n style.render.render[0],\r\n );\r\n styles.push(renderer.Simple(options));\r\n return styles;\r\n }\r\n\r\n const options = this.getMultipleStyle(feature, style.render);\r\n styles.push(renderer.UniqueValue(feature, options));\r\n return styles;\r\n }\r\n\r\n if (mode === 'ClassBreaks') {\r\n const size = feature.get('features')?.length || 0;\r\n if (size > 1) {\r\n const options = this.getSimpleStyle(\r\n feature,\r\n style.render.render[0],\r\n );\r\n styles.push(renderer.Simple(options));\r\n return styles;\r\n }\r\n\r\n const options = this.getMultipleStyle(feature, style.render);\r\n styles.push(renderer.ClassBreaks(feature, options));\r\n return styles;\r\n }\r\n } else if (style.style) {\r\n const options = this.getSimpleStyle(feature, style);\r\n styles.push(renderer.Simple(options));\r\n return styles;\r\n }\r\n }\r\n }\r\n styles.push(new Style({\r\n image: new Circle({\r\n radius: 4,\r\n fill: new Fill({\r\n color: 'rgba(0,155,255, 0.8)',\r\n }),\r\n }),\r\n fill: new Fill({\r\n color: 'rgba(255, 255, 255, 0.6)',\r\n }),\r\n stroke: new Stroke({\r\n color: '#009BFF',\r\n width: 2,\r\n }),\r\n }));\r\n return styles;\r\n };\r\n }\r\n\r\n getSimpleStyle(feature, _render) {\r\n let { cluster } = this._options;\r\n const render = { ..._render };\r\n if (render.type === 'Marker' && (render?.style?.icon || (cluster && render?.style?.image))) {\r\n render.style = {\r\n ...render.style,\r\n ...this.getMarkerOptions(feature, render.style),\r\n };\r\n }\r\n\r\n return render;\r\n }\r\n\r\n getMultipleStyle(feature, _render) {\r\n const render = { ..._render };\r\n\r\n if (render?.render?.length) {\r\n render.render = render.render.map(v => this.getSimpleStyle(feature, v));\r\n }\r\n\r\n return render;\r\n }\r\n\r\n getMarkerOptions(feature, style) {\r\n let icon = style?.icon || style;\r\n let color = style?.color || '#2491fc';\r\n let { cluster, point, label } = this._options;\r\n\r\n // 判断是否为自定义函数渲染\r\n let isFun = isFunction(style);\r\n let data = {};\r\n if (isFun) {\r\n data = style(feature) || {};\r\n icon = data?.style?.icon || data?.icon || icon;\r\n color = data?.style?.color || data?.color || color;\r\n }\r\n\r\n const size = feature.get('features')?.length || 0;\r\n let P = {\r\n marker: {\r\n // 图标\r\n icon,\r\n },\r\n point: {\r\n // 点位\r\n icon,\r\n type: 'PointIcon',\r\n },\r\n marker_cluster: {\r\n // 聚合图标\r\n icon,\r\n color: size > 1 ? '' : color,\r\n iconOptions:\r\n size > 1\r\n ? {\r\n hideFooter: true,\r\n info: { text: '', fontSize: 18 },\r\n ...(cluster?.iconOptions || {})\r\n }\r\n : {},\r\n ...(size > 1 && cluster?.style),\r\n image: size > 1 ? '' : style?.image || '',\r\n },\r\n point_cluster: {\r\n // 聚合点位\r\n icon,\r\n type: 'PointIcon',\r\n iconOptions:\r\n size > 1\r\n ? {\r\n text: size,\r\n }\r\n : {},\r\n ...(size > 1 && cluster?.style),\r\n },\r\n };\r\n\r\n let type = point ? 'point' : 'marker';\r\n\r\n if (cluster) {\r\n if (isObject(cluster)) {\r\n if (cluster.show) {\r\n type = 'marker_cluster';\r\n if (point) {\r\n type = 'point_cluster';\r\n }\r\n }\r\n } else {\r\n type = 'marker_cluster';\r\n if (point) {\r\n type = 'point_cluster';\r\n }\r\n }\r\n }\r\n\r\n let _style = P[type];\r\n\r\n if (label) {\r\n if (Object.keys(data)?.includes('customText')) {\r\n _style.text = data?.customText;\r\n } else {\r\n _style.text = this.getLabelStyle(feature, color);\r\n }\r\n }\r\n\r\n if (feature.isCluster && size > 1 && type === 'marker_cluster') {\r\n _style.text = this.getClusterTextStyle(size);\r\n }\r\n\r\n return _style;\r\n }\r\n\r\n setClusterSource(cluster) {\r\n let source = new VectorSource({ features: this._features });\r\n let showCluster = false;\r\n if (cluster) {\r\n if (isObject(cluster)) {\r\n if (cluster.show) {\r\n showCluster = true;\r\n }\r\n } else {\r\n showCluster = true;\r\n }\r\n }\r\n\r\n if (showCluster) {\r\n let clusterSource = new Cluster({\r\n source,\r\n createCluster: (point, features) => {\r\n let feature = new Feature({\r\n geometry: point,\r\n features: features.map(v => {\r\n v.layerKey = this.key;\r\n return v;\r\n }),\r\n });\r\n\r\n // 增加聚合点位标识\r\n feature.isCluster = true;\r\n\r\n if (features.length === 1) {\r\n feature.setProperties(features[0].values_);\r\n }\r\n\r\n return feature;\r\n },\r\n ...cluster,\r\n });\r\n\r\n this.setSource(clusterSource);\r\n } else {\r\n this.setSource(source);\r\n }\r\n }\r\n\r\n refresh() {\r\n getDataByHttpByParams({\r\n url: this.url,\r\n params: this.params,\r\n method: this.method,\r\n afterGetData: this.afterGetData,\r\n field: this.dataField\r\n }).then(features => {\r\n if (features) {\r\n let new_features = features;\r\n this._features = new_features;\r\n\r\n let newFeatures = [];\r\n new_features.map(v => {\r\n let f = this.getFeatureByFieldValue('id', v.values_.id);\r\n if (f) {\r\n f.values_ = v.values_;\r\n } else {\r\n newFeatures.push(v);\r\n }\r\n });\r\n\r\n if (newFeatures.length) {\r\n this.getSource().addFeatures(newFeatures);\r\n }\r\n\r\n this.getSource().changed();\r\n }\r\n });\r\n }\r\n\r\n loadData(data) {\r\n this.getSource().clear();\r\n let features = createGeoJson(data);\r\n this.getSource().addFeatures(features);\r\n this._features = features;\r\n if (this._options.cluster) {\r\n this.setClusterMode(this._options.cluster);\r\n }\r\n }\r\n\r\n loadUrlData(url, params, method, afterGetData = this.afterGetData) {\r\n this.getSource().clear();\r\n this._features = [];\r\n\r\n if (this.encrypt) {\r\n params = encryptParams(params, this.encrypt);\r\n }\r\n\r\n getDataByHttpByParams({\r\n url,\r\n params,\r\n method,\r\n afterGetData,\r\n field: this.dataField\r\n }).then(features => {\r\n if (features?.length) {\r\n this._features = features;\r\n this.getSource().addFeatures(features);\r\n }\r\n if (this._options.cluster) {\r\n this.setClusterMode(this._options.cluster);\r\n }\r\n });\r\n }\r\n\r\n loadFeatures(features) {\r\n this.getSource().clear();\r\n this.getSource().addFeatures(features);\r\n\r\n this._features = features;\r\n if (this._options.cluster) {\r\n this.setClusterMode(this._options.cluster);\r\n }\r\n }\r\n\r\n getFeatures() {\r\n const source = this.getSource().source || this.getSource();\r\n return source.getFeatures();\r\n }\r\n\r\n getFeatureByFieldValue(field, value) {\r\n return this.getFeatures().find(v => v.values_[field] === value);\r\n }\r\n\r\n getFeaturesByFieldValueOpera({ field, value, operation = '===', features, filter }) {\r\n return new Promise((resolve, reject) => {\r\n let _features = features || this.getFeatures();\r\n if (filter) {\r\n _features = _features.filter(feature => filter(feature.values_))\r\n }\r\n\r\n let result = _features;\r\n\r\n if (operation && value !== undefined) {\r\n if (['>', '>=', '<', '<=', '===', '!=='].includes(operation)) {\r\n try {\r\n // 通过动态创建方法自动传入操作符\r\n const fun = new Function('features', 'field', 'value', `return features.filter(v => v.values_[field] ${operation} value)`);\r\n result = fun(_features, field, value)\r\n } catch (err) {\r\n reject(err)\r\n }\r\n } else if (operation === 'like') { // 包含\r\n result = _features.filter(v => v.values_[field]?.indexOf(value) !== -1);\r\n } else if (operation === 'notLike') { // 不包含\r\n result = _features.filter(v => v.values_[field]?.indexOf(value) === -1);\r\n } else {\r\n result = _features.filter(v => v.values_[field]?.indexOf(value) !== -1);\r\n }\r\n }\r\n\r\n resolve(result)\r\n })\r\n }\r\n\r\n // 获取地图\r\n getMap() {\r\n return this.map;\r\n }\r\n\r\n // 设置过滤条件\r\n setGroup(group) {\r\n if (group?.length) {\r\n if (this._features?.length) {\r\n this._features.map(feature => {\r\n let show = true;\r\n group.map(v => {\r\n if (v.filter(feature.values_)) {\r\n if (v.hasOwnProperty('show') && !v.show) {\r\n show = false;\r\n }\r\n feature.show = show;\r\n }\r\n });\r\n });\r\n }\r\n this.group = group;\r\n this.setVisibleByGroup();\r\n this.setStyle(this.getStyleByMode());\r\n }\r\n }\r\n\r\n // 根据过滤条件组显示图层\r\n setVisibleByGroup() {\r\n const group = this.group;\r\n if (group?.length) {\r\n let visible = false;\r\n\r\n group.map(v => {\r\n if (!v.hasOwnProperty('show') || v.show) {\r\n visible = true;\r\n }\r\n });\r\n\r\n this.setVisible(visible);\r\n }\r\n }\r\n\r\n // 设置图层显示隐藏\r\n setVisible(visible) {\r\n super.setVisible(visible); // 将属性传递给父类\r\n\r\n const map = this.getMap && this.getMap();\r\n if (map) {\r\n map.layers.onChange();\r\n }\r\n\r\n // 判断是否完成过初始化,没有的话就加载一波数据\r\n if (!this.inited) {\r\n this.init();\r\n }\r\n }\r\n}\r\n\r\nexport default FeatureLayer;\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FeatureLayer.js","names":["_layer","require","_ol","_source","_renderer","_interopRequireDefault","_style3","_isFunction","_createFeatureCollection","_isObject","_encryptParams","_excluded","obj","__esModule","_typeof","o","Symbol","iterator","constructor","prototype","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","minLen","_arrayLikeToArray","n","Object","toString","call","slice","name","Array","from","test","iter","isArray","len","length","i","arr2","ownKeys","e","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","key","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","_classCallCheck","instance","Constructor","_defineProperties","props","descriptor","configurable","writable","_toPropertyKey","_createClass","protoProps","staticProps","_get","Reflect","get","bind","property","receiver","base","_superPropBase","desc","value","_inherits","subClass","superClass","create","_setPrototypeOf","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","construct","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","set","_set","isStrict","s","object","hasOwnProperty","getPrototypeOf","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","FeatureLayer","_Vector","_super","options","_thisSuper","_this","url","params","data","dataField","features","sourceOptions","label","labelField","point","cluster","template","autoRefresh","method","layerControl","show","style","group","iconOptions","afterGetData","legend","viewOnly","encrypt","valueField","map","other","VectorSource","defaultShow","f","size","Text","text","font","fill","Fill","color","padding","justify","textAlign","textBaseline","offsetY","offsetX","feature","_options","isCluster","_feature$get","values_","backgroundFill","backgroundStroke","Stroke","width","inited","init","loadUrlData","loadData","setVisible","val","setStyle","getStyleByMode","setClusterMode","setShow","setClusterSource","_this2","resolution","_this2$group","_this2$_options","otherStyle","v","styles","isFunction","_styles","renderer","Marker","getMarkerOptions","Style","_style","type","getSimpleStyle","Simple","isObject","_style2","mode","render","_feature$get2","getMultipleStyle","UniqueValue","_feature$get3","ClassBreaks","image","Circle","radius","stroke","_render","_render$style","_render$style2","icon","_render$render","_this3","_feature$get4","_this$_options","isFun","_data","_data2","_data3","_data4","_data5","_data6","P","marker","marker_cluster","hideFooter","info","fontSize","point_cluster","_Object$keys","includes","_data7","customText","getLabelStyle","getClusterTextStyle","_this4","_features","showCluster","clusterSource","Cluster","createCluster","Feature","geometry","layerKey","setProperties","setSource","refresh","_this5","getDataByHttpByParams","field","then","new_features","newFeatures","getFeatureByFieldValue","id","getSource","addFeatures","changed","clear","createGeoJson","_this6","encryptParams","loadFeatures","getFeatures","find","getFeaturesByFieldValueOpera","_ref","_this7","_ref$operation","operation","Promise","resolve","reject","fun","Function","concat","err","_v$values_$field","_v$values_$field2","_v$values_$field3","getMap","setGroup","_this$_features","setVisibleByGroup","visible","layers","onChange","Vector","_default","exports"],"sources":["feature-layer/FeatureLayer.js"],"sourcesContent":["import { Vector } from 'ol/layer';\r\nimport { Feature } from 'ol';\r\nimport { Vector as VectorSource, Cluster } from 'ol/source';\r\nimport renderer from '../renderer';\r\nimport { Fill, Style, Text, Stroke, Circle } from 'ol/style';\r\nimport isFunction from '../_util/isFunction';\r\nimport { getDataByHttpByParams, createGeoJson } from './createFeatureCollection';\r\nimport isObject from '../_util/isObject';\r\nimport encryptParams from \"../_util/encryptParams\";\r\n\r\nclass FeatureLayer extends Vector {\r\n constructor(options) {\r\n const {\r\n url,\r\n params,\r\n data,\r\n dataField,\r\n features,\r\n sourceOptions,\r\n key,\r\n name,\r\n label,\r\n labelField,\r\n point,\r\n cluster,\r\n template,\r\n autoRefresh,\r\n method,\r\n layerControl,\r\n show,\r\n style,\r\n group,\r\n iconOptions,\r\n afterGetData,\r\n legend,\r\n viewOnly,\r\n encrypt,\r\n valueField,\r\n map,\r\n ...other\r\n } = options;\r\n\r\n const props = {\r\n ...other,\r\n };\r\n props.source =\r\n props.source ||\r\n new VectorSource({\r\n features,\r\n ...sourceOptions,\r\n });\r\n\r\n let defaultShow = show;\r\n if (group?.length) {\r\n defaultShow = false;\r\n\r\n if (show) {\r\n group.map(f => {\r\n if (f.show) {\r\n defaultShow = true;\r\n }\r\n });\r\n }\r\n }\r\n\r\n super(props);\r\n super.show = show;\r\n // 参数\r\n this._options = options;\r\n\r\n // 地图\r\n this.map = map;\r\n\r\n // 接口地址\r\n this.url = url;\r\n\r\n // 接口地址请求类型\r\n this.method = method;\r\n\r\n // 接口查询参数\r\n this.params = params;\r\n\r\n // 图层标识\r\n this.key = key;\r\n\r\n // 图层名称\r\n this.name = name;\r\n\r\n // 标签\r\n this.label = label;\r\n\r\n // 标签字段\r\n this.labelField = labelField;\r\n\r\n // 聚合\r\n this.cluster = cluster;\r\n\r\n // 海量点\r\n this.point = point;\r\n\r\n // 自动刷新标识\r\n this.autoRefresh = autoRefresh;\r\n\r\n // 模版内容\r\n this.template = template;\r\n\r\n // 图层控制\r\n this.layerControl = layerControl;\r\n\r\n // 过滤\r\n this.group = group;\r\n\r\n // 处理获取的数据\r\n this.afterGetData = afterGetData;\r\n\r\n // 数据查询字段\r\n this.valueField = valueField;\r\n\r\n // 图例\r\n this.legend = legend;\r\n\r\n // 样式\r\n this.style = style;\r\n\r\n // 数据\r\n this.data = data;\r\n\r\n // 数据取值字段\r\n this.dataField = dataField || 'geometryInfo';\r\n\r\n // 仅展示\r\n this.viewOnly = viewOnly;\r\n\r\n // 是否初始化\r\n this.inited = false;\r\n\r\n // 加密\r\n this.encrypt = encrypt;\r\n\r\n // 默认是否展示\r\n if (defaultShow) {\r\n this.init()\r\n }\r\n }\r\n\r\n // 初始化数据\r\n init() {\r\n // 是否存在地址\r\n if (this.url) {\r\n // 执行\r\n this.loadUrlData(this.url, this.params, this.method);\r\n }\r\n\r\n // 直接加载数据\r\n if (this.data) {\r\n // 执行\r\n this.loadData(this.data);\r\n }\r\n\r\n this.inited = true;\r\n }\r\n\r\n // 重写父类的属性访问器\r\n get show() {\r\n return super.show;\r\n }\r\n\r\n set show(value) {\r\n this.setVisible(value);\r\n }\r\n\r\n set label(val) {\r\n this._options.label = val;\r\n this.setStyle(this.getStyleByMode());\r\n }\r\n\r\n set point(val) {\r\n this._options.point = val;\r\n this.setStyle(this.getStyleByMode());\r\n }\r\n\r\n set cluster(val) {\r\n this.setClusterMode(val);\r\n }\r\n\r\n setShow(value) {\r\n this.show = value;\r\n this.setVisible(value);\r\n }\r\n\r\n setClusterMode(val) {\r\n this._options.cluster = val;\r\n this.setClusterSource(val);\r\n this.setStyle(this.getStyleByMode());\r\n }\r\n\r\n getClusterTextStyle = size => {\r\n return new Text({\r\n text: String(size),\r\n font: '18px Calibri,sans-serif',\r\n fill: new Fill({\r\n color: '#fff',\r\n }),\r\n padding: [0, 0, 0, 0],\r\n justify: 'center',\r\n textAlign: 'center',\r\n textBaseline: 'middle',\r\n offsetY: -22,\r\n offsetX: 16,\r\n });\r\n };\r\n\r\n getLabelStyle = (feature, color) => {\r\n let { labelField } = this._options;\r\n\r\n // 判断是否是聚合点位\r\n if (feature.isCluster) {\r\n const size = feature.get('features')?.length || 0;\r\n if (size !== 1) {\r\n return;\r\n }\r\n }\r\n if (labelField) {\r\n return new Text({\r\n text: feature.values_[labelField] || '-',\r\n font: '12px Calibri,sans-serif',\r\n fill: new Fill({\r\n color,\r\n }),\r\n backgroundFill: new Fill({\r\n color: '#fff',\r\n }),\r\n backgroundStroke: new Stroke({\r\n color,\r\n width: 1,\r\n }),\r\n padding: [4, 2, 2, 4],\r\n justify: 'center',\r\n textBaseline: 'middle',\r\n offsetY: 12,\r\n });\r\n }\r\n }\r\n\r\n getStyleByMode() {\r\n return (feature, resolution) => {\r\n let { style, cluster, otherStyle } = this._options;\r\n let show = true;\r\n\r\n this.group?.map(v => {\r\n if (v.filter(feature.values_)) {\r\n style = v.style || style;\r\n if (v.hasOwnProperty('show') && !v.show) {\r\n show = false;\r\n }\r\n }\r\n });\r\n if (!show) {\r\n return null;\r\n }\r\n\r\n const styles = [];\r\n\r\n if (otherStyle) {\r\n if (isFunction(otherStyle)) {\r\n const _styles = otherStyle(feature, resolution);\r\n if (_styles) {\r\n if (Array.isArray(styles)) {\r\n styles.push(..._styles)\r\n } else {\r\n styles.push(_styles)\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (style) {\r\n if (typeof style === 'string' || (isFunction(style) && cluster)) {\r\n styles.push(new renderer.Marker({ ...this.getMarkerOptions(feature, style) }));\r\n return styles;\r\n } else if (style instanceof Style) {\r\n // 判断是否为 ol Style\r\n styles.push(style);\r\n return styles;\r\n } else if (isFunction(style)) {\r\n // 判断是否为自定义函数渲染\r\n\r\n let _style = style(feature);\r\n if (_style?.type && _style?.style) {\r\n const options = this.getSimpleStyle(feature, _style);\r\n styles.push(renderer.Simple(options));\r\n return styles;\r\n }\r\n\r\n styles.push(_style);\r\n return styles;\r\n } else if (isObject(style)) {\r\n let { mode } = style;\r\n if (mode) {\r\n if (mode === 'Simple') {\r\n const options = this.getSimpleStyle(feature, style.render);\r\n styles.push(renderer.Simple(options));\r\n return styles;\r\n }\r\n\r\n if (mode === 'UniqueValue') {\r\n const size = feature.get('features')?.length || 0;\r\n if (size > 1) {\r\n const options = this.getSimpleStyle(\r\n feature,\r\n style.render.render[0],\r\n );\r\n styles.push(renderer.Simple(options));\r\n return styles;\r\n }\r\n\r\n const options = this.getMultipleStyle(feature, style.render);\r\n styles.push(renderer.UniqueValue(feature, options));\r\n return styles;\r\n }\r\n\r\n if (mode === 'ClassBreaks') {\r\n const size = feature.get('features')?.length || 0;\r\n if (size > 1) {\r\n const options = this.getSimpleStyle(\r\n feature,\r\n style.render.render[0],\r\n );\r\n styles.push(renderer.Simple(options));\r\n return styles;\r\n }\r\n\r\n const options = this.getMultipleStyle(feature, style.render);\r\n styles.push(renderer.ClassBreaks(feature, options));\r\n return styles;\r\n }\r\n } else if (style.style) {\r\n const options = this.getSimpleStyle(feature, style);\r\n styles.push(renderer.Simple(options));\r\n return styles;\r\n }\r\n }\r\n }\r\n styles.push(new Style({\r\n image: new Circle({\r\n radius: 4,\r\n fill: new Fill({\r\n color: 'rgba(0,155,255, 0.8)',\r\n }),\r\n }),\r\n fill: new Fill({\r\n color: 'rgba(255, 255, 255, 0.6)',\r\n }),\r\n stroke: new Stroke({\r\n color: '#009BFF',\r\n width: 2,\r\n }),\r\n }));\r\n return styles;\r\n };\r\n }\r\n\r\n getSimpleStyle(feature, _render) {\r\n let { cluster } = this._options;\r\n const render = { ..._render };\r\n if (render.type === 'Marker' && (render?.style?.icon || (cluster && render?.style?.image))) {\r\n render.style = {\r\n ...render.style,\r\n ...this.getMarkerOptions(feature, render.style),\r\n };\r\n }\r\n\r\n return render;\r\n }\r\n\r\n getMultipleStyle(feature, _render) {\r\n const render = { ..._render };\r\n\r\n if (render?.render?.length) {\r\n render.render = render.render.map(v => this.getSimpleStyle(feature, v));\r\n }\r\n\r\n return render;\r\n }\r\n\r\n getMarkerOptions(feature, style) {\r\n let icon = style?.icon || style;\r\n let image = style?.image;\r\n let color = style?.color || '#2491fc';\r\n let { cluster, point, label } = this._options;\r\n\r\n // 判断是否为自定义函数渲染\r\n let isFun = isFunction(style);\r\n let data = {};\r\n if (isFun) {\r\n data = style(feature) || {};\r\n icon = data?.style?.icon || data?.icon || icon;\r\n color = data?.style?.color || data?.color || color;\r\n image = data?.style?.image || data?.image || image\r\n }\r\n\r\n const size = feature.get('features')?.length || 0;\r\n\r\n let P = {\r\n marker: {\r\n // 图标\r\n icon,\r\n },\r\n point: {\r\n // 点位\r\n icon,\r\n type: 'PointIcon',\r\n },\r\n marker_cluster: {\r\n // 聚合图标\r\n icon,\r\n color: size > 1 ? '' : color,\r\n iconOptions:\r\n size > 1\r\n ? {\r\n hideFooter: true,\r\n info: { text: '', fontSize: 18 },\r\n ...(cluster?.iconOptions || {})\r\n }\r\n : {},\r\n ...(size > 1 && cluster?.style),\r\n image: size > 1 ? '' : image || '',\r\n },\r\n point_cluster: {\r\n // 聚合点位\r\n icon,\r\n type: 'PointIcon',\r\n iconOptions:\r\n size > 1\r\n ? {\r\n text: size,\r\n }\r\n : {},\r\n ...(size > 1 && cluster?.style),\r\n },\r\n };\r\n\r\n let type = point ? 'point' : 'marker';\r\n\r\n if (cluster) {\r\n if (isObject(cluster)) {\r\n if (cluster.show) {\r\n type = 'marker_cluster';\r\n if (point) {\r\n type = 'point_cluster';\r\n }\r\n }\r\n } else {\r\n type = 'marker_cluster';\r\n if (point) {\r\n type = 'point_cluster';\r\n }\r\n }\r\n }\r\n\r\n let _style = P[type];\r\n\r\n if (label) {\r\n if (Object.keys(data)?.includes('customText')) {\r\n _style.text = data?.customText;\r\n } else {\r\n _style.text = this.getLabelStyle(feature, color);\r\n }\r\n }\r\n\r\n if (feature.isCluster && size > 1 && type === 'marker_cluster') {\r\n _style.text = this.getClusterTextStyle(size);\r\n }\r\n\r\n return _style;\r\n }\r\n\r\n setClusterSource(cluster) {\r\n let source = new VectorSource({ features: this._features });\r\n let showCluster = false;\r\n if (cluster) {\r\n if (isObject(cluster)) {\r\n if (cluster.show) {\r\n showCluster = true;\r\n }\r\n } else {\r\n showCluster = true;\r\n }\r\n }\r\n\r\n if (showCluster) {\r\n let clusterSource = new Cluster({\r\n source,\r\n createCluster: (point, features) => {\r\n let feature = new Feature({\r\n geometry: point,\r\n features: features.map(v => {\r\n v.layerKey = this.key;\r\n return v;\r\n }),\r\n });\r\n\r\n // 增加聚合点位标识\r\n feature.isCluster = true;\r\n\r\n if (features.length === 1) {\r\n feature.setProperties(features[0].values_);\r\n }\r\n\r\n return feature;\r\n },\r\n ...cluster,\r\n });\r\n\r\n this.setSource(clusterSource);\r\n } else {\r\n this.setSource(source);\r\n }\r\n }\r\n\r\n refresh() {\r\n getDataByHttpByParams({\r\n url: this.url,\r\n params: this.params,\r\n method: this.method,\r\n afterGetData: this.afterGetData,\r\n field: this.dataField\r\n }).then(features => {\r\n if (features) {\r\n let new_features = features;\r\n this._features = new_features;\r\n\r\n let newFeatures = [];\r\n new_features.map(v => {\r\n let f = this.getFeatureByFieldValue('id', v.values_.id);\r\n if (f) {\r\n f.values_ = v.values_;\r\n } else {\r\n newFeatures.push(v);\r\n }\r\n });\r\n\r\n if (newFeatures.length) {\r\n this.getSource().addFeatures(newFeatures);\r\n }\r\n\r\n this.getSource().changed();\r\n }\r\n });\r\n }\r\n\r\n loadData(data) {\r\n this.getSource().clear();\r\n let features = createGeoJson(data);\r\n this.getSource().addFeatures(features);\r\n this._features = features;\r\n if (this._options.cluster) {\r\n this.setClusterMode(this._options.cluster);\r\n }\r\n }\r\n\r\n loadUrlData(url, params, method, afterGetData = this.afterGetData) {\r\n this.getSource().clear();\r\n this._features = [];\r\n\r\n if (this.encrypt) {\r\n params = encryptParams(params, this.encrypt);\r\n }\r\n\r\n getDataByHttpByParams({\r\n url,\r\n params,\r\n method,\r\n afterGetData,\r\n field: this.dataField\r\n }).then(features => {\r\n if (features?.length) {\r\n this._features = features;\r\n this.getSource().addFeatures(features);\r\n }\r\n if (this._options.cluster) {\r\n this.setClusterMode(this._options.cluster);\r\n }\r\n });\r\n }\r\n\r\n loadFeatures(features) {\r\n this.getSource().clear();\r\n this.getSource().addFeatures(features);\r\n\r\n this._features = features;\r\n if (this._options.cluster) {\r\n this.setClusterMode(this._options.cluster);\r\n }\r\n }\r\n\r\n getFeatures() {\r\n const source = this.getSource().source || this.getSource();\r\n return source.getFeatures();\r\n }\r\n\r\n getFeatureByFieldValue(field, value) {\r\n return this.getFeatures().find(v => v.values_[field] === value);\r\n }\r\n\r\n getFeaturesByFieldValueOpera({ field, value, operation = '===', features, filter }) {\r\n return new Promise((resolve, reject) => {\r\n let _features = features || this.getFeatures();\r\n if (filter) {\r\n _features = _features.filter(feature => filter(feature.values_))\r\n }\r\n\r\n let result = _features;\r\n\r\n if (operation && value !== undefined) {\r\n if (['>', '>=', '<', '<=', '===', '!=='].includes(operation)) {\r\n try {\r\n // 通过动态创建方法自动传入操作符\r\n const fun = new Function('features', 'field', 'value', `return features.filter(v => v.values_[field] ${operation} value)`);\r\n result = fun(_features, field, value)\r\n } catch (err) {\r\n reject(err)\r\n }\r\n } else if (operation === 'like') { // 包含\r\n result = _features.filter(v => v.values_[field]?.indexOf(value) !== -1);\r\n } else if (operation === 'notLike') { // 不包含\r\n result = _features.filter(v => v.values_[field]?.indexOf(value) === -1);\r\n } else {\r\n result = _features.filter(v => v.values_[field]?.indexOf(value) !== -1);\r\n }\r\n }\r\n\r\n resolve(result)\r\n })\r\n }\r\n\r\n // 获取地图\r\n getMap() {\r\n return this.map;\r\n }\r\n\r\n // 设置过滤条件\r\n setGroup(group) {\r\n if (group?.length) {\r\n if (this._features?.length) {\r\n this._features.map(feature => {\r\n let show = true;\r\n group.map(v => {\r\n if (v.filter(feature.values_)) {\r\n if (v.hasOwnProperty('show') && !v.show) {\r\n show = false;\r\n }\r\n feature.show = show;\r\n }\r\n });\r\n });\r\n }\r\n this.group = group;\r\n this.setVisibleByGroup();\r\n this.setStyle(this.getStyleByMode());\r\n }\r\n }\r\n\r\n // 根据过滤条件组显示图层\r\n setVisibleByGroup() {\r\n const group = this.group;\r\n if (group?.length) {\r\n let visible = false;\r\n\r\n group.map(v => {\r\n if (!v.hasOwnProperty('show') || v.show) {\r\n visible = true;\r\n }\r\n });\r\n\r\n this.setVisible(visible);\r\n }\r\n }\r\n\r\n // 设置图层显示隐藏\r\n setVisible(visible) {\r\n super.setVisible(visible); // 将属性传递给父类\r\n\r\n const map = this.getMap && this.getMap();\r\n if (map) {\r\n map.layers.onChange();\r\n }\r\n\r\n // 判断是否完成过初始化,没有的话就加载一波数据\r\n if (!this.inited) {\r\n this.init();\r\n }\r\n }\r\n}\r\n\r\nexport default FeatureLayer;\r\n"],"mappings":"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"}
|
|
@@ -91,11 +91,11 @@ var LayerSelect = function LayerSelect(props) {
|
|
|
91
91
|
return _onClick(item.value);
|
|
92
92
|
}
|
|
93
93
|
}, item.label);
|
|
94
|
-
})), showOpen && /*#__PURE__*/_react["default"].createElement(Divider, {
|
|
94
|
+
})), showOpen && /*#__PURE__*/_react["default"].createElement(_antd.Divider, {
|
|
95
95
|
style: {
|
|
96
96
|
margin: 0
|
|
97
97
|
}
|
|
98
|
-
}, /*#__PURE__*/_react["default"].createElement(Button, {
|
|
98
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Button, {
|
|
99
99
|
icon: open ? /*#__PURE__*/_react["default"].createElement(_icons.VerticalAlignTopOutlined, null) : /*#__PURE__*/_react["default"].createElement(_icons.VerticalAlignBottomOutlined, null),
|
|
100
100
|
onClick: function onClick() {
|
|
101
101
|
return setOpen(!open);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_icons","_Table","_interopRequireDefault","_Modal","_layer","_layer2","_Polygon","_Draw","_useProps2","_classnames2","_ahooks","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","key","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","arr2","l","iterator","f","next","done","isArray","classPrefix","LayerSelect","props","_list","_props$options","options","onChange","_useState","useState","_useState2","open","setOpen","_useState3","_useState4","active","setActive","time","useRef","useUpdateEffect","createElement","Fragment","showOpen","list","onClick","current","clearTimeout","setTimeout","className","classnames","concat","Space","size","wrap","map","item","index","label","Divider","style","margin","Button","icon","VerticalAlignTopOutlined","VerticalAlignBottomOutlined","type","_default","exports","onClose","drawType","title","renderTableActive","_useProps","useProps","_useState5","_useState6","currentLayerKey","setCurrentLayerKey","_useState7","_useState8","dataSource","setDataSource","_useState9","_useState10","loading","setLoading","_useState11","_useState12","_useState13","_useState14","layersOpts","setLayersOpts","_useState15","_useState16","feature","setFeature","draw","useEffect","JSON","stringify","_opts$","opts","layers","getAllLayers","v","layerControl","Draw","zIndex","destroy","hideTemplate","_feature$getGeometry","geometry","getGeometry","layer","getLayerByKey","tableData","Image","getWmsData","Vector","getWfsData","message","info","extent","getExtent","source","getSource","features","getFeatureInfo","listKeys","getKeys","data","labelField","NAME","forEachFeatureIntersectingExtent","featureList","setHighlightFeature","coorStr","coordinates","getCoordinates","polygonGeometry","fromCircle","cql_filter","getWFSFeatureInfoByLayer","then","itemk","columns","dataIndex","width","render","text","record","doc","document","getElementsByClassName","rect","getBoundingClientRect","parentRect","getViewport","left","showTemplate","fitViewOptions","padding","display","rowKey","CaretUpOutlined","CaretDownOutlined"],"sources":["tools/Toolbox/SelectTools/index.js"],"sourcesContent":["/*\r\n * @Description:框选、圈选、多边形选择\r\n */\r\nimport React, { useEffect, useRef, useState } from 'react';\r\nimport { message, Space } from 'antd';\r\nimport { CaretUpOutlined, CaretDownOutlined } from '@ant-design/icons';\r\nimport Table from '../../components/Table';\r\nimport Modal from '../../components/Modal';\r\nimport { getWFSFeatureInfoByLayer } from '../../../_util/layer';\r\nimport { Image, Vector } from 'ol/layer';\r\nimport { fromCircle } from 'ol/geom/Polygon';\r\nimport Draw from '../../Utils/Draw';\r\nimport './index.less';\r\nimport useProps from '../../../use-props';\r\nimport classnames from 'classnames';\r\nimport { useUpdateEffect } from 'ahooks';\r\nimport { VerticalAlignBottomOutlined, VerticalAlignTopOutlined } from '@ant-design/icons';\r\n\r\n\r\nconst classPrefix = 'selectTools';\r\n\r\nconst LayerSelect = props => {\r\n const { options = [], value, onChange } = props;\r\n const [open, setOpen] = useState(false);\r\n const [active, setActive] = useState(value);\r\n const time = useRef();\r\n\r\n useUpdateEffect(() => {\r\n setActive(value);\r\n }, [value]);\r\n\r\n if (!options?.length) {\r\n return <></>;\r\n }\r\n const showOpen = options?.length > 9;\r\n\r\n let list = options;\r\n if (options?.length) {\r\n if (!open) {\r\n if (options.length > 9) {\r\n list = options.slice(0, 9);\r\n }\r\n } else {\r\n list = options;\r\n }\r\n }\r\n\r\n const onClick = value => {\r\n setActive(value);\r\n\r\n if (time.current) {\r\n clearTimeout(time.current);\r\n }\r\n\r\n time.current = setTimeout(() => {\r\n onChange?.(value);\r\n }, 500);\r\n };\r\n\r\n return (\r\n <div className={classnames(`${classPrefix}-layer-select`, { 'selectTools-layer-select-scroll': open })}>\r\n <Space size={[8, 8]} wrap>\r\n {list?.length > 0 &&\r\n list.map((item, index) => (\r\n <div\r\n key={index}\r\n className={classnames(`${classPrefix}-layer-select-item`, {\r\n [`${classPrefix}-layer-select-item-active`]: active === item.value,\r\n })}\r\n onClick={() => onClick(item.value)}\r\n >\r\n {item.label}\r\n </div>\r\n ))}\r\n </Space>\r\n\r\n {showOpen && (\r\n <Divider style={{ margin: 0 }}>\r\n <Button\r\n icon={open ? <VerticalAlignTopOutlined /> : <VerticalAlignBottomOutlined />}\r\n onClick={() => setOpen(!open)}\r\n type=\"link\"\r\n >\r\n {open ? '收起' : '展开'}\r\n </Button>\r\n </Divider>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nexport default props => {\r\n const { onClose, drawType, title, renderTableActive } = props;\r\n const { map } = useProps();\r\n const [currentLayerKey, setCurrentLayerKey] = useState('');\r\n const [dataSource, setDataSource] = useState([]);\r\n const [loading, setLoading] = useState(false);\r\n const [open, setOpen] = useState(true);\r\n const [layersOpts, setLayersOpts] = useState([]);\r\n const [feature, setFeature] = useState({});\r\n\r\n const draw = useRef();\r\n\r\n useEffect(() => {\r\n onClick();\r\n }, [currentLayerKey, JSON.stringify(feature)]);\r\n\r\n useEffect(() => {\r\n if (map) {\r\n let opts = [];\r\n let layers = map\r\n .getAllLayers()\r\n .filter(v => v.key && v.name && v.layerControl && v.get('visible'));\r\n layers.map(v => {\r\n opts.push({\r\n ...v,\r\n value: v.key,\r\n label: v.name,\r\n });\r\n });\r\n setCurrentLayerKey(opts?.[0]?.value)\r\n setLayersOpts(opts);\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n draw.current = new Draw({ map, zIndex: 80 });\r\n draw.current.draw(drawType, feature => {\r\n setFeature(feature);\r\n });\r\n return () => {\r\n draw.current.destroy();\r\n map.hideTemplate();\r\n };\r\n }, []);\r\n\r\n const onClick = () => {\r\n setDataSource([]);\r\n if (!feature) return;\r\n let geometry = feature?.getGeometry?.();\r\n if (!geometry) return\r\n setLoading(true);\r\n\r\n let layer = map.layers.getLayerByKey(currentLayerKey);\r\n if (geometry && currentLayerKey && layer) {\r\n let tableData = [];\r\n // wms图层\r\n if (layer instanceof Image) {\r\n getWmsData(geometry, layer, tableData);\r\n } else if (layer instanceof Vector) {\r\n getWfsData(geometry, layer, tableData);\r\n }\r\n } else {\r\n setLoading(false);\r\n if (!geometry) {\r\n message.info('请先框选图层', 2);\r\n }\r\n if (!currentLayerKey) {\r\n message.info('请先选择图层', 2);\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * @description: wfs图层时获取框选数据\r\n * @param {*} geometry\r\n * @param {*} layer\r\n * @param {*} tableData\r\n * @return {*}\r\n */\r\n const getWfsData = (geometry, layer, tableData) => {\r\n let extent = geometry.getExtent();\r\n let source = layer.getSource();\r\n let features = [];\r\n const getFeatureInfo = feature => {\r\n let listKeys = feature.getKeys();\r\n let data = {};\r\n listKeys.forEach(item => {\r\n if (feature.get(item)) {\r\n data[item] = feature.get(item);\r\n\r\n if (layer.labelField) {\r\n data.NAME = feature.get(layer.labelField);\r\n }\r\n\r\n data.feature = feature;\r\n }\r\n });\r\n return data;\r\n };\r\n if (source.forEachFeatureIntersectingExtent && extent) {\r\n source.forEachFeatureIntersectingExtent(extent, function (feature) {\r\n const featureList = feature.get('features');\r\n if (featureList?.length > 1) {\r\n featureList.forEach(feature => {\r\n let data = getFeatureInfo(feature);\r\n tableData.push(data);\r\n features.push(feature);\r\n });\r\n } else {\r\n let data = getFeatureInfo(feature);\r\n tableData.push(data);\r\n features.push(feature);\r\n }\r\n });\r\n setLoading(false);\r\n map.setHighlightFeature(features);\r\n setDataSource(tableData);\r\n } else {\r\n setLoading(false);\r\n }\r\n };\r\n\r\n /**\r\n * @description: wms图层时获取框选数据\r\n * @return {*}\r\n */\r\n const getWmsData = (geometry, layer, tableData) => {\r\n let coorStr = '';\r\n let coordinates = geometry.getCoordinates();\r\n\r\n // 圈选处理\r\n if (drawType === 'Circle') {\r\n let polygonGeometry = new fromCircle(geometry);\r\n coordinates = polygonGeometry.getCoordinates();\r\n }\r\n\r\n coordinates[0].forEach((v, i) => {\r\n if (i == 0) {\r\n coorStr += `${v[0]} ${v[1]}`;\r\n } else {\r\n coorStr += `, ${v[0]} ${v[1]}`;\r\n }\r\n });\r\n // 增加图层的其他过滤\r\n const filter = layer?.cql_filter ? `${layer?.cql_filter} and ` : '';\r\n\r\n getWFSFeatureInfoByLayer(\r\n layer,\r\n `${filter}INTERSECTS(geo_location, POLYGON((${coorStr})))`,\r\n ).then(features => {\r\n setLoading(false);\r\n map.setHighlightFeature(features);\r\n if (features?.length) {\r\n features.forEach(item => {\r\n let listKeys = item.getKeys();\r\n let data = {};\r\n listKeys.forEach(itemk => {\r\n if (item.get(itemk)) {\r\n data[itemk] = item.get(itemk);\r\n data.feature = item;\r\n }\r\n });\r\n if (layer.labelField) {\r\n data.NAME = item.get(layer.labelField) || '';\r\n }\r\n tableData.push(data);\r\n });\r\n setDataSource(tableData);\r\n } else {\r\n message.info('暂无数据', 2);\r\n }\r\n });\r\n };\r\n\r\n let columns = [\r\n {\r\n title: '编码/名称',\r\n dataIndex: 'NAME',\r\n width: 200,\r\n render: (text, record) => {\r\n return (\r\n <a\r\n onClick={() => {\r\n let doc = document.getElementsByClassName('ol-map-tools')[0];\r\n let rect = doc.getBoundingClientRect();\r\n let parentRect = map.getViewport().getBoundingClientRect();\r\n let left = rect.left - parentRect.left + 12 + 350 + 150;\r\n map.showTemplate(record.feature, { fitViewOptions: { padding: [100, 400, 100, left] } })\r\n }}\r\n >\r\n {text}\r\n </a>\r\n );\r\n },\r\n },\r\n ];\r\n return (\r\n <Modal title={title || ''} onClose={onClose} width={300}>\r\n\r\n <LayerSelect\r\n options={layersOpts}\r\n value={currentLayerKey}\r\n onChange={setCurrentLayerKey}\r\n />\r\n\r\n {renderTableActive && renderTableActive(dataSource, currentLayerKey, onClick)}\r\n\r\n <div style={{ display: open ? 'block' : 'none' }}>\r\n <Table\r\n rowKey=\"code\"\r\n loading={loading}\r\n dataSource={dataSource}\r\n columns={columns}\r\n size=\"small\"\r\n />\r\n </div>\r\n\r\n\r\n {dataSource?.length > 0 &&\r\n <div\r\n className=\"ol-map-search-result-button\"\r\n onClick={() => setOpen(!open)}\r\n >\r\n {open ? '收起' : '展开'}\r\n {open ? <CaretUpOutlined /> : <CaretDownOutlined />}\r\n </div>\r\n }\r\n </Modal>\r\n );\r\n};\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_icons","_Table","_interopRequireDefault","_Modal","_layer","_layer2","_Polygon","_Draw","_useProps2","_classnames2","_ahooks","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","key","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","arr2","l","iterator","f","next","done","isArray","classPrefix","LayerSelect","props","_list","_props$options","options","onChange","_useState","useState","_useState2","open","setOpen","_useState3","_useState4","active","setActive","time","useRef","useUpdateEffect","createElement","Fragment","showOpen","list","onClick","current","clearTimeout","setTimeout","className","classnames","concat","Space","size","wrap","map","item","index","label","Divider","style","margin","Button","icon","VerticalAlignTopOutlined","VerticalAlignBottomOutlined","type","_default","exports","onClose","drawType","title","renderTableActive","_useProps","useProps","_useState5","_useState6","currentLayerKey","setCurrentLayerKey","_useState7","_useState8","dataSource","setDataSource","_useState9","_useState10","loading","setLoading","_useState11","_useState12","_useState13","_useState14","layersOpts","setLayersOpts","_useState15","_useState16","feature","setFeature","draw","useEffect","JSON","stringify","_opts$","opts","layers","getAllLayers","v","layerControl","Draw","zIndex","destroy","hideTemplate","_feature$getGeometry","geometry","getGeometry","layer","getLayerByKey","tableData","Image","getWmsData","Vector","getWfsData","message","info","extent","getExtent","source","getSource","features","getFeatureInfo","listKeys","getKeys","data","labelField","NAME","forEachFeatureIntersectingExtent","featureList","setHighlightFeature","coorStr","coordinates","getCoordinates","polygonGeometry","fromCircle","cql_filter","getWFSFeatureInfoByLayer","then","itemk","columns","dataIndex","width","render","text","record","doc","document","getElementsByClassName","rect","getBoundingClientRect","parentRect","getViewport","left","showTemplate","fitViewOptions","padding","display","rowKey","CaretUpOutlined","CaretDownOutlined"],"sources":["tools/Toolbox/SelectTools/index.js"],"sourcesContent":["/*\r\n * @Description:框选、圈选、多边形选择\r\n */\r\nimport React, { useEffect, useRef, useState } from 'react';\r\nimport { message, Space, Divider, Button } from 'antd';\r\nimport { CaretUpOutlined, CaretDownOutlined } from '@ant-design/icons';\r\nimport Table from '../../components/Table';\r\nimport Modal from '../../components/Modal';\r\nimport { getWFSFeatureInfoByLayer } from '../../../_util/layer';\r\nimport { Image, Vector } from 'ol/layer';\r\nimport { fromCircle } from 'ol/geom/Polygon';\r\nimport Draw from '../../Utils/Draw';\r\nimport './index.less';\r\nimport useProps from '../../../use-props';\r\nimport classnames from 'classnames';\r\nimport { useUpdateEffect } from 'ahooks';\r\nimport { VerticalAlignBottomOutlined, VerticalAlignTopOutlined } from '@ant-design/icons';\r\n\r\n\r\nconst classPrefix = 'selectTools';\r\n\r\nconst LayerSelect = props => {\r\n const { options = [], value, onChange } = props;\r\n const [open, setOpen] = useState(false);\r\n const [active, setActive] = useState(value);\r\n const time = useRef();\r\n\r\n useUpdateEffect(() => {\r\n setActive(value);\r\n }, [value]);\r\n\r\n if (!options?.length) {\r\n return <></>;\r\n }\r\n const showOpen = options?.length > 9;\r\n\r\n let list = options;\r\n if (options?.length) {\r\n if (!open) {\r\n if (options.length > 9) {\r\n list = options.slice(0, 9);\r\n }\r\n } else {\r\n list = options;\r\n }\r\n }\r\n\r\n const onClick = value => {\r\n setActive(value);\r\n\r\n if (time.current) {\r\n clearTimeout(time.current);\r\n }\r\n\r\n time.current = setTimeout(() => {\r\n onChange?.(value);\r\n }, 500);\r\n };\r\n\r\n return (\r\n <div className={classnames(`${classPrefix}-layer-select`, { 'selectTools-layer-select-scroll': open })}>\r\n <Space size={[8, 8]} wrap>\r\n {list?.length > 0 &&\r\n list.map((item, index) => (\r\n <div\r\n key={index}\r\n className={classnames(`${classPrefix}-layer-select-item`, {\r\n [`${classPrefix}-layer-select-item-active`]: active === item.value,\r\n })}\r\n onClick={() => onClick(item.value)}\r\n >\r\n {item.label}\r\n </div>\r\n ))}\r\n </Space>\r\n\r\n {showOpen && (\r\n <Divider style={{ margin: 0 }}>\r\n <Button\r\n icon={open ? <VerticalAlignTopOutlined /> : <VerticalAlignBottomOutlined />}\r\n onClick={() => setOpen(!open)}\r\n type=\"link\"\r\n >\r\n {open ? '收起' : '展开'}\r\n </Button>\r\n </Divider>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nexport default props => {\r\n const { onClose, drawType, title, renderTableActive } = props;\r\n const { map } = useProps();\r\n const [currentLayerKey, setCurrentLayerKey] = useState('');\r\n const [dataSource, setDataSource] = useState([]);\r\n const [loading, setLoading] = useState(false);\r\n const [open, setOpen] = useState(true);\r\n const [layersOpts, setLayersOpts] = useState([]);\r\n const [feature, setFeature] = useState({});\r\n\r\n const draw = useRef();\r\n\r\n useEffect(() => {\r\n onClick();\r\n }, [currentLayerKey, JSON.stringify(feature)]);\r\n\r\n useEffect(() => {\r\n if (map) {\r\n let opts = [];\r\n let layers = map\r\n .getAllLayers()\r\n .filter(v => v.key && v.name && v.layerControl && v.get('visible'));\r\n layers.map(v => {\r\n opts.push({\r\n ...v,\r\n value: v.key,\r\n label: v.name,\r\n });\r\n });\r\n setCurrentLayerKey(opts?.[0]?.value)\r\n setLayersOpts(opts);\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n draw.current = new Draw({ map, zIndex: 80 });\r\n draw.current.draw(drawType, feature => {\r\n setFeature(feature);\r\n });\r\n return () => {\r\n draw.current.destroy();\r\n map.hideTemplate();\r\n };\r\n }, []);\r\n\r\n const onClick = () => {\r\n setDataSource([]);\r\n if (!feature) return;\r\n let geometry = feature?.getGeometry?.();\r\n if (!geometry) return\r\n setLoading(true);\r\n\r\n let layer = map.layers.getLayerByKey(currentLayerKey);\r\n if (geometry && currentLayerKey && layer) {\r\n let tableData = [];\r\n // wms图层\r\n if (layer instanceof Image) {\r\n getWmsData(geometry, layer, tableData);\r\n } else if (layer instanceof Vector) {\r\n getWfsData(geometry, layer, tableData);\r\n }\r\n } else {\r\n setLoading(false);\r\n if (!geometry) {\r\n message.info('请先框选图层', 2);\r\n }\r\n if (!currentLayerKey) {\r\n message.info('请先选择图层', 2);\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * @description: wfs图层时获取框选数据\r\n * @param {*} geometry\r\n * @param {*} layer\r\n * @param {*} tableData\r\n * @return {*}\r\n */\r\n const getWfsData = (geometry, layer, tableData) => {\r\n let extent = geometry.getExtent();\r\n let source = layer.getSource();\r\n let features = [];\r\n const getFeatureInfo = feature => {\r\n let listKeys = feature.getKeys();\r\n let data = {};\r\n listKeys.forEach(item => {\r\n if (feature.get(item)) {\r\n data[item] = feature.get(item);\r\n\r\n if (layer.labelField) {\r\n data.NAME = feature.get(layer.labelField);\r\n }\r\n\r\n data.feature = feature;\r\n }\r\n });\r\n return data;\r\n };\r\n if (source.forEachFeatureIntersectingExtent && extent) {\r\n source.forEachFeatureIntersectingExtent(extent, function (feature) {\r\n const featureList = feature.get('features');\r\n if (featureList?.length > 1) {\r\n featureList.forEach(feature => {\r\n let data = getFeatureInfo(feature);\r\n tableData.push(data);\r\n features.push(feature);\r\n });\r\n } else {\r\n let data = getFeatureInfo(feature);\r\n tableData.push(data);\r\n features.push(feature);\r\n }\r\n });\r\n setLoading(false);\r\n map.setHighlightFeature(features);\r\n setDataSource(tableData);\r\n } else {\r\n setLoading(false);\r\n }\r\n };\r\n\r\n /**\r\n * @description: wms图层时获取框选数据\r\n * @return {*}\r\n */\r\n const getWmsData = (geometry, layer, tableData) => {\r\n let coorStr = '';\r\n let coordinates = geometry.getCoordinates();\r\n\r\n // 圈选处理\r\n if (drawType === 'Circle') {\r\n let polygonGeometry = new fromCircle(geometry);\r\n coordinates = polygonGeometry.getCoordinates();\r\n }\r\n\r\n coordinates[0].forEach((v, i) => {\r\n if (i == 0) {\r\n coorStr += `${v[0]} ${v[1]}`;\r\n } else {\r\n coorStr += `, ${v[0]} ${v[1]}`;\r\n }\r\n });\r\n // 增加图层的其他过滤\r\n const filter = layer?.cql_filter ? `${layer?.cql_filter} and ` : '';\r\n\r\n getWFSFeatureInfoByLayer(\r\n layer,\r\n `${filter}INTERSECTS(geo_location, POLYGON((${coorStr})))`,\r\n ).then(features => {\r\n setLoading(false);\r\n map.setHighlightFeature(features);\r\n if (features?.length) {\r\n features.forEach(item => {\r\n let listKeys = item.getKeys();\r\n let data = {};\r\n listKeys.forEach(itemk => {\r\n if (item.get(itemk)) {\r\n data[itemk] = item.get(itemk);\r\n data.feature = item;\r\n }\r\n });\r\n if (layer.labelField) {\r\n data.NAME = item.get(layer.labelField) || '';\r\n }\r\n tableData.push(data);\r\n });\r\n setDataSource(tableData);\r\n } else {\r\n message.info('暂无数据', 2);\r\n }\r\n });\r\n };\r\n\r\n let columns = [\r\n {\r\n title: '编码/名称',\r\n dataIndex: 'NAME',\r\n width: 200,\r\n render: (text, record) => {\r\n return (\r\n <a\r\n onClick={() => {\r\n let doc = document.getElementsByClassName('ol-map-tools')[0];\r\n let rect = doc.getBoundingClientRect();\r\n let parentRect = map.getViewport().getBoundingClientRect();\r\n let left = rect.left - parentRect.left + 12 + 350 + 150;\r\n map.showTemplate(record.feature, { fitViewOptions: { padding: [100, 400, 100, left] } })\r\n }}\r\n >\r\n {text}\r\n </a>\r\n );\r\n },\r\n },\r\n ];\r\n return (\r\n <Modal title={title || ''} onClose={onClose} width={300}>\r\n\r\n <LayerSelect\r\n options={layersOpts}\r\n value={currentLayerKey}\r\n onChange={setCurrentLayerKey}\r\n />\r\n\r\n {renderTableActive && renderTableActive(dataSource, currentLayerKey, onClick)}\r\n\r\n <div style={{ display: open ? 'block' : 'none' }}>\r\n <Table\r\n rowKey=\"code\"\r\n loading={loading}\r\n dataSource={dataSource}\r\n columns={columns}\r\n size=\"small\"\r\n />\r\n </div>\r\n\r\n\r\n {dataSource?.length > 0 &&\r\n <div\r\n className=\"ol-map-search-result-button\"\r\n onClick={() => setOpen(!open)}\r\n >\r\n {open ? '收起' : '展开'}\r\n {open ? <CaretUpOutlined /> : <CaretDownOutlined />}\r\n </div>\r\n }\r\n </Modal>\r\n );\r\n};\r\n"],"mappings":"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"}
|