Openlayers Proj не определена проблема - PullRequest
0 голосов
/ 20 сентября 2018

Приложение Openlayers (5.1.3) в комплекте с browserify и babel:

import {Map, View} from 'ol';
import TileLayer from 'ol/layer/Tile';
import OSM from 'ol/source/OSM';
import {bbox} from 'ol/loadingstrategy';
import proj from 'ol/proj';
...
    var source = new VectorSource({
        loader: function( extent, resolution, projection ) {
            var crs = config.crs || "EPSG:4326";
            var url = '/rest/table/' + config.table;
            var newExtent = proj.transformExtent( extent, proj.get( crs ), proj.get('EPSG:3857'));
...

Ошибка:

Uncaught TypeError: Cannot read property 'transformExtent' of undefined

package.json:

  "scripts": {
    "watch": "watchify -g [ babelify --presets [ \"@babel/preset-env\" ] ] client/js/main.js -o public/bundle.js -v ",

Почему

1 Ответ

0 голосов
/ 20 сентября 2018

Благодаря @Mike https://stackoverflow.com/users/10118270/mike - вот обновленный код:

import {Map, View} from 'ol';
import TileLayer from 'ol/layer/Tile';
import OSM from 'ol/source/OSM';
import {bbox} from 'ol/loadingstrategy';
import {get as getProjection, transformExtent} from 'ol/proj';
...
    var source = new VectorSource({
        loader: function( extent, resolution, projection ) {
            var crs = config.crs || "EPSG:4326";
            var url = '/rest/table/' + config.table;
            var newExtent = transformExtent( extent, getProjection('EPSG:3857'), getProjection( crs ));
...

У меня также были неверные проекции источника и дест.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...