Skip to content

Commit 54d5ede

Browse files
【fix】 解决leaflet端的mpv地图缩放,图层位置偏差问题;当在一个页面同时显示两个含有EchartsLayer的地图时,拖动第二个地图会影响第一个 review by songym
1 parent 69f220a commit 54d5ede

File tree

8 files changed

+1753
-1783
lines changed

8 files changed

+1753
-1783
lines changed

dist/leaflet/iclient9-leaflet-es6.js

Lines changed: 1718 additions & 1733 deletions
Large diffs are not rendered by default.

dist/leaflet/iclient9-leaflet-es6.min.js

Lines changed: 6 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/leaflet/iclient9-leaflet.css

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/leaflet/iclient9-leaflet.js

Lines changed: 14 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -44,34 +44,19 @@
4444
/******/ // define getter function for harmony exports
4545
/******/ __webpack_require__.d = function(exports, name, getter) {
4646
/******/ if(!__webpack_require__.o(exports, name)) {
47-
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
47+
/******/ Object.defineProperty(exports, name, {
48+
/******/ configurable: false,
49+
/******/ enumerable: true,
50+
/******/ get: getter
51+
/******/ });
4852
/******/ }
4953
/******/ };
5054
/******/
5155
/******/ // define __esModule on exports
5256
/******/ __webpack_require__.r = function(exports) {
53-
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
54-
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
55-
/******/ }
5657
/******/ Object.defineProperty(exports, '__esModule', { value: true });
5758
/******/ };
5859
/******/
59-
/******/ // create a fake namespace object
60-
/******/ // mode & 1: value is a module id, require it
61-
/******/ // mode & 2: merge all properties of value into the ns
62-
/******/ // mode & 4: return value when already ns object
63-
/******/ // mode & 8|1: behave like require
64-
/******/ __webpack_require__.t = function(value, mode) {
65-
/******/ if(mode & 1) value = __webpack_require__(value);
66-
/******/ if(mode & 8) return value;
67-
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
68-
/******/ var ns = Object.create(null);
69-
/******/ __webpack_require__.r(ns);
70-
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
71-
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
72-
/******/ return ns;
73-
/******/ };
74-
/******/
7560
/******/ // getDefaultExport function for compatibility with non-harmony modules
7661
/******/ __webpack_require__.n = function(module) {
7762
/******/ var getter = module && module.__esModule ?
@@ -34655,7 +34640,7 @@ var MapVRenderer = exports.MapVRenderer = function (_BaseLayer) {
3465534640
}
3465634641
var pixel = {
3465734642
x: offset.x - topLeftPX.x,
34658-
y: offset.y - topLeftPX.x
34643+
y: offset.y - topLeftPX.y
3465934644
};
3466034645
return [pixel.x, pixel.y];
3466134646
}
@@ -75040,8 +75025,9 @@ var EchartsLayer = exports.EchartsLayer = _leaflet2["default"].Layer.extend({
7504075025
this._map = map;
7504175026
this._initEchartsContainer();
7504275027
this._ec = _echarts2["default"].init(this._echartsContainer);
75043-
_echarts2["default"].leafletMap = map;
75028+
this._ec.leafletMap = map;
7504475029
var me = this;
75030+
7504575031
map.on("zoomstart", function () {
7504675032
me._disableEchartsContainer();
7504775033
});
@@ -75052,8 +75038,7 @@ var EchartsLayer = exports.EchartsLayer = _leaflet2["default"].Layer.extend({
7505275038
type: 'LeafletMapLayout',
7505375039
event: 'LeafletMapLayout',
7505475040
update: 'updateLayout'
75055-
}, function (payload, ecModel) {// eslint-disable-line no-unused-vars
75056-
75041+
}, function (payload) {// eslint-disable-line no-unused-vars
7505775042
});
7505875043
_echarts2["default"].registerCoordinateSystem('leaflet', LeafletMapCoordSys);
7505975044
_echarts2["default"].extendComponentModel({
@@ -75069,7 +75054,7 @@ var EchartsLayer = exports.EchartsLayer = _leaflet2["default"].Layer.extend({
7506975054
type: 'LeafletMap',
7507075055
render: function render(LeafletMapModel, ecModel, api) {
7507175056
var rendering = true;
75072-
var leafletMap = _echarts2["default"].leafletMap;
75057+
var leafletMap = ecModel.scheduler.ecInstance.leafletMap;
7507375058
var viewportRoot = api.getZr().painter.getViewportRoot();
7507475059

7507575060
var animated = leafletMap.options.zoomAnimation && _leaflet2["default"].Browser.any3d;
@@ -75287,18 +75272,18 @@ LeafletMapCoordSys.dimensions = LeafletMapCoordSys.prototype.dimensions;
7528775272

7528875273
LeafletMapCoordSys.create = function (ecModel) {
7528975274
var coordSys = void 0;
75290-
75275+
var leafletMap = ecModel.scheduler.ecInstance.leafletMap;
7529175276
ecModel.eachComponent('LeafletMap', function (leafletMapModel) {
7529275277
if (!coordSys) {
75293-
coordSys = new LeafletMapCoordSys(_echarts2["default"].leafletMap);
75278+
coordSys = new LeafletMapCoordSys(leafletMap);
7529475279
}
7529575280
leafletMapModel.coordinateSystem = coordSys;
7529675281
leafletMapModel.coordinateSystem.setMapOffset(leafletMapModel.__mapOffset || [0, 0]);
7529775282
});
7529875283
ecModel.eachSeries(function (seriesModel) {
7529975284
if (!seriesModel.get('coordinateSystem') || seriesModel.get('coordinateSystem') === 'leaflet') {
7530075285
if (!coordSys) {
75301-
coordSys = new LeafletMapCoordSys(_echarts2["default"].leafletMap);
75286+
coordSys = new LeafletMapCoordSys(leafletMap);
7530275287
}
7530375288
seriesModel.coordinateSystem = coordSys;
7530475289
seriesModel.animation = seriesModel.animation === true;
@@ -80838,7 +80823,7 @@ module.exports = function (proj4) {
8083880823
/* 418 */
8083980824
/***/ (function(module) {
8084080825

80841-
module.exports = {"_from":"proj4@2.3.15","_id":"proj4@2.3.15","_inBundle":false,"_integrity":"sha1-WtBui8owvg/6OJpJ5FZfUfBtCJ4=","_location":"/proj4","_phantomChildren":{},"_requested":{"type":"version","registry":true,"raw":"proj4@2.3.15","name":"proj4","escapedName":"proj4","rawSpec":"2.3.15","saveSpec":null,"fetchSpec":"2.3.15"},"_requiredBy":["/"],"_resolved":"http://localhost:4873/proj4/-/proj4-2.3.15.tgz","_shasum":"5ad06e8bca30be0ffa389a49e4565f51f06d089e","_spec":"proj4@2.3.15","_where":"E:\\2018\\git\\iClient-JavaScript","author":"","bugs":{"url":"https://github.com/proj4js/proj4js/issues"},"bundleDependencies":false,"contributors":[{"name":"Mike Adair","email":"madair@dmsolutions.ca"},{"name":"Richard Greenwood","email":"rich@greenwoodmap.com"},{"name":"Calvin Metcalf","email":"calvin.metcalf@gmail.com"},{"name":"Richard Marsden","url":"http://www.winwaed.com"},{"name":"T. Mittan"},{"name":"D. Steinwand"},{"name":"S. Nelson"}],"dependencies":{"mgrs":"~0.0.2"},"deprecated":false,"description":"Proj4js is a JavaScript library to transform point coordinates from one coordinate system to another, including datum transformations.","devDependencies":{"browserify":"~12.0.1","chai":"~1.8.1","curl":"git://github.com/cujojs/curl.git","grunt":"~0.4.2","grunt-browserify":"~4.0.1","grunt-cli":"~0.1.13","grunt-contrib-connect":"~0.6.0","grunt-contrib-jshint":"~0.8.0","grunt-contrib-uglify":"~0.11.1","grunt-mocha-phantomjs":"~0.4.0","istanbul":"~0.2.4","mocha":"~1.17.1","tin":"~0.4.0"},"directories":{"test":"test","doc":"docs"},"homepage":"https://github.com/proj4js/proj4js#readme","jam":{"main":"dist/proj4.js","include":["dist/proj4.js","README.md","AUTHORS","LICENSE.md"]},"license":"MIT","main":"lib/index.js","name":"proj4","repository":{"type":"git","url":"git://github.com/proj4js/proj4js.git"},"scripts":{"test":"./node_modules/istanbul/lib/cli.js test ./node_modules/mocha/bin/_mocha test/test.js"},"version":"2.3.15"};
80826+
module.exports = {"_from":"proj4@2.3.15","_id":"proj4@2.3.15","_inBundle":false,"_integrity":"sha1-WtBui8owvg/6OJpJ5FZfUfBtCJ4=","_location":"/proj4","_phantomChildren":{},"_requested":{"type":"version","registry":true,"raw":"proj4@2.3.15","name":"proj4","escapedName":"proj4","rawSpec":"2.3.15","saveSpec":null,"fetchSpec":"2.3.15"},"_requiredBy":["/"],"_resolved":"http://registry.npm.taobao.org/proj4/download/proj4-2.3.15.tgz","_shasum":"5ad06e8bca30be0ffa389a49e4565f51f06d089e","_spec":"proj4@2.3.15","_where":"G:\\20190115\\iClient-JavaScript","author":"","bugs":{"url":"https://github.com/proj4js/proj4js/issues"},"bundleDependencies":false,"contributors":[{"name":"Mike Adair","email":"madair@dmsolutions.ca"},{"name":"Richard Greenwood","email":"rich@greenwoodmap.com"},{"name":"Calvin Metcalf","email":"calvin.metcalf@gmail.com"},{"name":"Richard Marsden","url":"http://www.winwaed.com"},{"name":"T. Mittan"},{"name":"D. Steinwand"},{"name":"S. Nelson"}],"dependencies":{"mgrs":"~0.0.2"},"deprecated":false,"description":"Proj4js is a JavaScript library to transform point coordinates from one coordinate system to another, including datum transformations.","devDependencies":{"browserify":"~12.0.1","chai":"~1.8.1","curl":"git://github.com/cujojs/curl.git","grunt":"~0.4.2","grunt-browserify":"~4.0.1","grunt-cli":"~0.1.13","grunt-contrib-connect":"~0.6.0","grunt-contrib-jshint":"~0.8.0","grunt-contrib-uglify":"~0.11.1","grunt-mocha-phantomjs":"~0.4.0","istanbul":"~0.2.4","mocha":"~1.17.1","tin":"~0.4.0"},"directories":{"test":"test","doc":"docs"},"homepage":"https://github.com/proj4js/proj4js#readme","jam":{"main":"dist/proj4.js","include":["dist/proj4.js","README.md","AUTHORS","LICENSE.md"]},"license":"MIT","main":"lib/index.js","name":"proj4","repository":{"type":"git","url":"git://github.com/proj4js/proj4js.git"},"scripts":{"test":"./node_modules/istanbul/lib/cli.js test ./node_modules/mocha/bin/_mocha test/test.js"},"version":"2.3.15"};
8084280827

8084380828
/***/ }),
8084480829
/* 419 */

dist/leaflet/iclient9-leaflet.min.css

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

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/leaflet/overlay/EChartsLayer.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,9 @@ export const EchartsLayer = L.Layer.extend({
6969
this._map = map;
7070
this._initEchartsContainer();
7171
this._ec = echarts.init(this._echartsContainer);
72-
echarts.leafletMap = map;
72+
this._ec.leafletMap= map;
7373
const me = this;
74+
7475
map.on("zoomstart", function () {
7576
me._disableEchartsContainer();
7677
});
@@ -81,8 +82,7 @@ export const EchartsLayer = L.Layer.extend({
8182
type: 'LeafletMapLayout',
8283
event: 'LeafletMapLayout',
8384
update: 'updateLayout'
84-
}, function (payload, ecModel) { // eslint-disable-line no-unused-vars
85-
85+
}, function (payload ) { // eslint-disable-line no-unused-vars
8686
});
8787
echarts.registerCoordinateSystem(
8888
'leaflet', LeafletMapCoordSys
@@ -100,7 +100,7 @@ export const EchartsLayer = L.Layer.extend({
100100
type: 'LeafletMap',
101101
render: function (LeafletMapModel, ecModel, api) {
102102
let rendering = true;
103-
const leafletMap = echarts.leafletMap;
103+
let leafletMap = ecModel.scheduler.ecInstance.leafletMap;
104104
const viewportRoot = api.getZr().painter.getViewportRoot();
105105

106106
const animated = leafletMap.options.zoomAnimation && L.Browser.any3d;
@@ -322,18 +322,18 @@ LeafletMapCoordSys.dimensions = LeafletMapCoordSys.prototype.dimensions;
322322

323323
LeafletMapCoordSys.create = function (ecModel) {
324324
let coordSys;
325-
325+
let leafletMap = ecModel.scheduler.ecInstance.leafletMap;
326326
ecModel.eachComponent('LeafletMap', function (leafletMapModel) {
327327
if (!coordSys) {
328-
coordSys = new LeafletMapCoordSys(echarts.leafletMap);
328+
coordSys = new LeafletMapCoordSys(leafletMap);
329329
}
330330
leafletMapModel.coordinateSystem = coordSys;
331331
leafletMapModel.coordinateSystem.setMapOffset(leafletMapModel.__mapOffset || [0, 0]);
332332
});
333333
ecModel.eachSeries(function (seriesModel) {
334334
if (!seriesModel.get('coordinateSystem') || seriesModel.get('coordinateSystem') === 'leaflet') {
335335
if (!coordSys) {
336-
coordSys = new LeafletMapCoordSys(echarts.leafletMap);
336+
coordSys = new LeafletMapCoordSys(leafletMap);
337337
}
338338
seriesModel.coordinateSystem = coordSys;
339339
seriesModel.animation = seriesModel.animation === true;

src/leaflet/overlay/mapv/MapVRenderer.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -269,7 +269,7 @@ export class MapVRenderer extends BaseLayer {
269269
}
270270
var pixel = {
271271
x: offset.x - topLeftPX.x,
272-
y: offset.y - topLeftPX.x
272+
y: offset.y - topLeftPX.y
273273
};
274274
return [pixel.x, pixel.y];
275275
}

0 commit comments

Comments
 (0)