geovisearth / Exports
# Geovis Earth SDK
# 构建步骤
npm install //安装依赖
npm run webdoc //首次编译文档
npm run build //首次编译库文件
npm run start //运行演示
# 运行
npm run start
运行的时候,切换为开发者环境(process.env.NODE_ENV = development)。
如果需要Cesium和GvolCesium源码级在线调试,请参考下面操作:
1、Cesium在线调试:
(1)注释掉示例代码中,html对cesium库和geovisearth.sdk库的标签引用。改为脚本引入方式。
<!-- <script src="../../lib/resources/gvolCesium/Cesium.js"></script>-->
<!-- <script src="../../lib/geovisearth.sdk.js"></script> -->
(2)需要在html中添加以下脚本:
<body>
<div id="GvolContainer"></div>
<div id="toolbar"></div>
<script>
function startup() {}
……
……
window.CESIUM_BASE_URL = "http://localhost:8080/Source/";
import(window.CESIUM_BASE_URL + 'Cesium.js').then(CesiumM => {
if (!window.Cesium) {
window.Cesium = {};
Object.keys(CesiumM).forEach(e => {
window.Cesium[e] = CesiumM[e];
});
}
import('../../lib/geovisearth.sdk.js').then(() => {
GVOL.ready().then(startup);
});
});
</script>
</body>
2、GvolCesium.js在线调试(需要申请代码权限):需要在./src/Utils/ready.js中修改
function loadGovlCesium() {
// Cesium.xbsj 如果加载的Cesium.js中包含了XbsjCesium,则这个变量会有值,就不需要再单独加载XbsjCesium了。补充注释
if (!loadingXbsjCesium && typeof Cesium.xbsj === 'undefined') {
if(GVOLENV === 'development'){
//GvolCesium.js在线调试
loadingXbsjCesium = HTML.loadJS('http://localhost:9527/GvollCesium/GvolCesium.js').then(() => (loadingXbsjCesium = undefined));
//loadingXbsjCesium = HTML.loadJS(HTML.cesiumDir + 'GvolCesium.js').then(() => (loadingXbsjCesium = undefined));
} else {
loadingXbsjCesium = HTML.loadJS(HTML.cesiumDir + 'GvolCesium.js').then(() => (loadingXbsjCesium = undefined));
}
return loadingXbsjCesium;
} else {
return Promise.resolve();
}
}
# 单独编译文档
npm run webdoc
# 单独编译src库文件
npm run build
# 编译+导出
npm run export
运行的时候,切换为生成环境(process.env.NODE_ENV = production)。
执行顺序:
1、执行前,确保GvolCesium.js文件是最新版本,然后手动拷贝到根目录下的resources目录下。注意:GvolCesium.js文件是来自另个工程默认存放在根目录下的resources目录。
2、webdoc文档的生成,分为2个,1个jsdoc生成md,另个是tsdoc生成md。
3、build构建,生成根目录下的export/lib文件,主要包含了 geovisearth.sdk.js文件和 GvolCesium.js文件。
4、webpack拷贝指令调用,将根目录下的resources拷贝到export/lib/resources目录下。
5、webpack混淆指令调用,将根目录下的export/lib/geovisearth.sdk.js文件混淆。
6、webpack拷贝指令调用,将根目录下的export/lib文件夹拷贝到根目录下供 dev环境测试。
