簡體   English   中英

配置StealJS加載程序以導入Openlayers 3調試版本

[英]Configuring StealJS loader to import openlayers 3 debug version

我正在使用StealJS加載Openlayers庫。 似乎正在加載調試-openlayers的未構建版本與構建版本不同。

使用內置版本時,它可以正常工作並返回實際的ol對象。 使用調試版本時,它將返回包含ol的包裝對象。 這會中斷對ol.map等的所有調用。

我正在這樣導入ol文件:

import ol from 'openlayers';

這是在chrome中使用console.log返回的ol-debug.js對象:

{
CLOSURE_NO_DEPS: true
COMPILED: false
goog: Object
module: undefined
ol: Object //this is the object I want
__proto__: Object
}

使用生成的版本,該對象是包含動畫,地圖,圖層等的實際ol對象。

使用npm config:

"npmIgnore": [
  "openlayers"
],
"paths": {
  "openlayers": "node_modules/openlayers/dist/ol-debug.js"
},
"meta": {
  "openlayers": {
    "format": "global"
  }
},

沒有文件的調試版本,調試應用程序確實非常困難。 切換到調試版本會破壞所有小部件,因為ol.map現在需要成為ol.ol.map,因為ol嵌套在父對象中。

解決方案是添加一個導出屬性:

"meta": {
  "openlayers": {
    "format": "global",
    "exports": "ol"
  }
},

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM