在开发模式下启动MapStore2客户端

先决条件

  1. 您需要在某处运行GeoNode实例;在此特定示例中,我们假设GeoNode正在上运行 :http://localhost:8000

安装所需的软件包

sudo apt install nodejs npm

准备源代码

git clone --recursive https://github.com/GeoNode/geonode-mapstore-client.git geonode-mapstore-client-dev

编译MapStore2客户端

cd geonode-mapstore-client/geonode_mapstore_client/client/
npm update
npm install
npm run compile

编辑文件 env.json

vim env.json
{
    "DEV_SERVER_HOST": "localhost:8000",
    "DEV_SERVER_HOST_PROTOCOL": "http"
}

在开发模式下运行MapStore2

npm run start

连接到 ::http://localhost:8081

这是一个 proxied GeoNode表单MapStore2客户端的版本。 要使用原始地理节点上传新图层,请执行以下操作

每次渲染地图时,从GeoNode Layers Details页面或地图创建,都将访问MapStore2开发模式运行代码。

你现在可以更新飞翔上的代码了。

示例1:禁用图层详细信息小地图中的PrintPlugin

vim js/previewPlugins.js
...
BurgerMenuPlugin: require('../MapStore2/web/client/plugins/BurgerMenu'),
ScaleBoxPlugin: require('../MapStore2/web/client/plugins/ScaleBox'),
MapFooterPlugin: require('../MapStore2/web/client/plugins/MapFooter'),
// PrintPlugin: require('../MapStore2/web/client/plugins/Print'),
TimelinePlugin: require('../MapStore2/web/client/plugins/Timeline'),
PlaybackPlugin: require('../MapStore2/web/client/plugins/Playback'),
...

示例2:从大地图中禁用MousePositionPlugin

vim js/plugins.js
...
SaveAsPlugin: require('../MapStore2/web/client/plugins/SaveAs').default,
MetadataExplorerPlugin: require('../MapStore2/web/client/plugins/MetadataExplorer'),
GridContainerPlugin: require('../MapStore2/web/client/plugins/GridContainer'),
StyleEditorPlugin: require('../MapStore2/web/client/plugins/StyleEditor'),
TimelinePlugin: require('../MapStore2/web/client/plugins/Timeline'),
PlaybackPlugin: require('../MapStore2/web/client/plugins/Playback'),
// MousePositionPlugin: require('../MapStore2/web/client/plugins/MousePosition'),
SearchPlugin: require('../MapStore2/web/client/plugins/Search'),
SearchServicesConfigPlugin: require('../MapStore2/web/client/plugins/SearchServicesConfig'),
...