Рецепт OpenLayers 6 & RollupJS - PullRequest
       74

Рецепт OpenLayers 6 & RollupJS

1 голос
/ 28 октября 2019

Я пытаюсь создать производственную сборку OpenLayers 6, используя RollupJS. Я хочу создать минимизированный модуль ES6, из которого я могу импортировать классы в своем коде ... Я не хочу смешивать мой код с основными классами OL. Из того, что я видел, пакет OpenLayers по умолчанию, Parcel и другие опции не могут с этим справиться.

Все отлично работало с OpenLayers-5, используя ol-rollup (https://github.com/openlayers/ol-rollup). Однако, если я обновлюсь доOpenLayers-6 & RollupJS <= 1.26.0 (<a href="https://github.com/flavour/ol-rollup" rel="nofollow noreferrer">https://github.com/flavour/ol-rollup),, тогда я получаю следующую ошибку:

(!) `this` has been rewritten to `undefined`
https://rollupjs.org/guide/en#error-this-is-undefined
node_modules\ol\layer\Tile.js
1: var __extends = (this && this.__extends) || (function () {
                    ^
2:     var extendStatics = function (d, b) {
3:         extendStatics = Object.setPrototypeOf ||
...and 1 other occurrence
node_modules\ol\source\XYZ.js
2:  * @module ol/source/XYZ
3:  */
4: var __extends = (this && this.__extends) || (function () {
                    ^
5:     var extendStatics = function (d, b) {
6:         extendStatics = Object.setPrototypeOf ||
...and 1 other occurrence
node_modules\ol\AssertionError.js
1: var __extends = (this && this.__extends) || (function () {
                    ^
2:     var extendStatics = function (d, b) {
3:         extendStatics = Object.setPrototypeOf ||
...and 1 other occurrence
...and 98 other files

На веб-сайте RollupJS есть, что сказать по этому поводу: https://rollupjs.org/guide/en/#error-this-is-undefined https://rollupjs.org/guide/en/#danger-zone

Я понятия не имею, как использовать options.context или options.moduleContext, чтобы это исправить.

...