Skip to content

Commit d26658d

Browse files
committed
leaflet和openlayers统一要素编辑服务支持的数据格式(GeoJSON)
1 parent 862460d commit d26658d

File tree

9 files changed

+2089
-2096
lines changed

9 files changed

+2089
-2096
lines changed

dist/iclient9-leaflet.js

Lines changed: 2076 additions & 2083 deletions
Large diffs are not rendered by default.

dist/iclient9-leaflet.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.

dist/iclient9-openlayers.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12260,8 +12260,8 @@ ol.supermap.FeatureService.prototype._createServerFeature = function (geoFeature
1226012260
}
1226112261
feature.fieldNames = fieldNames;
1226212262
feature.fieldValues = fieldValues;
12263-
if (geoJSONFeature.id) {
12264-
feature.id = geoJSONFeature.id;
12263+
if (geoFeature.getId()) {
12264+
feature.id = geoFeature.getId();
1226512265
}
1226612266
feature.geometry = Util.toSuperMapGeometry((new ol.format.GeoJSON()).writeFeatureObject(geoFeature));
1226712267
return feature;
@@ -19810,7 +19810,7 @@ SuperMap.EditFeaturesParameters = SuperMap.Class({
1981019810
dataSetName: null,
1981119811
/**
1981219812
* APIProperty: features
19813-
* {Array(Object)} 当前需要创建或者是修改的要素集。
19813+
* {Array<SuperMap.Feature.Vector|GeoJSON Feature>} 当前需要创建或者是修改的要素集。
1981419814
*/
1981519815
features: null,
1981619816

dist/iclient9-openlayers.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/leaflet/02_editFeatures.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
function initFeature() {
3333
var polygon = L.polygon([[10, 100], [10, 124], [40, 124], [40, 100], [10, 100]]);
3434
var getFeatureParams = new SuperMap.GetFeaturesByGeometryParameters({
35+
toIndex:-1,
3536
datasetNames: ["World:Capitals"],
3637
geometry: polygon
3738
});

examples/openlayers/02_editFeatures.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ <h5 class='panel-title text-center'>编辑</h5></div>
6262
var polygon = new ol.geom.Polygon([[[118, 20], [120, 20], [120, 50], [-120, 50], [118, 20]]]);
6363
var featureService = new ol.supermap.FeatureService(url);
6464
var getFeatureParams = new SuperMap.GetFeaturesByGeometryParameters({
65+
toIndex:-1,
6566
datasetNames: ["World:Capitals"],
6667
geometry: polygon,
6768
spatialQueryMode: "INTERSECT"

src/common/iServer/EditFeaturesParameters.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ SuperMap.EditFeaturesParameters = SuperMap.Class({
1818
dataSetName: null,
1919
/**
2020
* APIProperty: features
21-
* {Array(Object)} 当前需要创建或者是修改的要素集。
21+
* {Array<SuperMap.Feature.Vector|GeoJSON Feature>} 当前需要创建或者是修改的要素集。
2222
*/
2323
features: null,
2424

src/leaflet/services/FeatureService.js

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -198,11 +198,9 @@ var FeatureService = ServiceBase.extend({
198198

199199
_createServerFeature: function (geoFeature) {
200200
var geoJSONFeature, feature = {}, fieldNames = [], fieldValues = [];
201-
if (geoFeature instanceof L.Path) {
202-
geoJSONFeature = geoFeature.toGeoJSON();
203-
} else {
204-
geoJSONFeature = geoFeature;
205-
}
201+
202+
geoJSONFeature = geoFeature || {};
203+
206204
for (var key in geoJSONFeature.properties) {
207205
fieldNames.push(key);
208206
fieldValues.push(geoJSONFeature.properties[key]);

src/openlayers/services/FeatureService.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -211,8 +211,8 @@ ol.supermap.FeatureService.prototype._createServerFeature = function (geoFeature
211211
}
212212
feature.fieldNames = fieldNames;
213213
feature.fieldValues = fieldValues;
214-
if (geoJSONFeature.id) {
215-
feature.id = geoJSONFeature.id;
214+
if (geoFeature.getId()) {
215+
feature.id = geoFeature.getId();
216216
}
217217
feature.geometry = Util.toSuperMapGeometry((new ol.format.GeoJSON()).writeFeatureObject(geoFeature));
218218
return feature;

0 commit comments

Comments
 (0)