进入新公司一段时间了,新公司业务主要从事卫星方面等webgl的开发,主要使用了leafletjs和cesium,其中cesium难度较大,需求较多,再进行了一段时间的使用开发后依旧感到有些力不从心,

因此决定从头对cesium进行一个系统的学习,至于那些老掉牙的理论就不说了,一切以代码为准。

开发环境: vue-cli4  vue版本:2.6.11   cesium版本:1.86.1

首先就是使用vue创建一个vue项目了,选择vue2版本,其实vue3在使用的时候都相差不大,对有些新更新的内容兼容性更好,但考虑到当前主要还是使用vue2,因此基于2版本进行开发

然后是按照cesium

npm i cesium

我当前安装的是1.86.1版本,当前版本在vue2使用时会有一些小问题,后面会提到。

安装完成就将其引入项目,在这里我没有像网络上说的去配置vue.config.js,而是直接去引入cesium:

import * as Cesium from 'cesium'

这时直接启动时会报一个错误

error  in ./node_modules/cesium/Source/ThirdParty/zip.js
 function getWorker(options = {}) {
return new Worker(new URL(workerData.scripts[0], import.meta.url), options);
}
主要原因是wenpace在加载import.meta的时候需要一个loader,安装一下就行了,在vue3+vite中就没有这个问题
npm i @open-wc/webpack-import-meta-loader -S

然后在vue.config.js里面配置,没有就在项目根目录新建一个

module.exports = {
configureWebpack: {
module: {
rules: [
{
test: /\.js$/,
use: {
loader: '@open-wc/webpack-import-meta-loader',
},
},
],
},
},
}

启动,成功。

使用cesium的时候需要在官网申请一个key,同时在main.js写入

window.CESIUM_BASE_URL = '/'

在这里使用了高德地图,需要的可以参考一下,

https://webst02.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}
同时把该目录下的文件复制到项目的public文件夹下面

打开,网站就大工告成了,同时打包测试一下,这时发现又出现了一个问题,报了一个错误
Cannot read property 'length' of undefined

这是@open-wc/webpack-import-meta-loader版本问题,通过降级或者修改进行解决:

再次打包,,ok,使用serve启动项目,成功,效果如下,大功告成


后继将继续更新cesium模拟卫星发射,卫星扫描,卫星过境、与地面站通信等方面的内容
 

cesium开发(1)搭建 vue + cesium开发环境的更多相关文章

  1. vue + cesium开发(5) 搭建 vue + cesium开发环境(2)

    上vue+cesium开发(1)中,没有进行配置webpack,而是使用了插件进行代替,在使用过程中出现了一些未知BUG,影响体验,因此参考了官方文档对项目进行重新配置,使用了 copy-webpac ...

  2. 前端开发 Vue -1windows环境搭建Vue Node开发环境

    解决几个疑问: 想学习下vue.js,我理解的它是一个前端的框架,主要作用是对数据的处理,和juqery类似,所以不太理解为什么要在nodejs中npm install vue呢?在html文件中引入 ...

  3. webpack搭建vue项目开发环境【文档向学习】

    为何有这篇文章 各个社区已经有无数篇帖子介绍如何使用webpack搭建前端项目,但无论是出于学习webpack的目的还是为了解决工作实际需要都面临着一个现实问题,那就是版本更新.别人的帖子可能刚写好版 ...

  4. 利用官方的vue-cli脚手架来搭建Vue集成开发环境

    在利用vue-cli脚手架搭建vue集成环境之前,我们需要先安装nodejs的环境.如果在cmd中输入node --version和npm --version出现如下的版本信息,就说明安装已经成功了. ...

  5. vue前端开发那些事——vue组件开发

    vue的学习曲线不是很陡(相比其它框架,如anglarjs),官方文档比较全面,分为基础篇和高级篇.我们刚开始学习的时候,肯定像引用jquery那样,先把vue的js引进来,然后学习基础内容.如果仅仅 ...

  6. 使用@vue/cli搭建vue项目开发环境

    当前系统版本 mac OS 10.14.2 1.安装node.js开发环境 前端开发框架和环境都是需要 Node.js  vue的运行是要依赖于node的npm的管理工具来实现 <mac OS ...

  7. Window环境下搭建Vue.js开发环境

    原文链接:http://blog.csdn.net/solo95/article/details/72084907 笔者最近在进行前端的学习,在点完了HTML5.CSS3.JavaScript等技能树 ...

  8. 搭建Vue.js开发环境(window10)

    我在配置Vue.js环境的时候遇到了很多的问题,希望能把这些解决方法也介绍给大家,希望能帮到大家,共同学习. 如果要转发,请注明原作者和原产地,谢谢! 注释:下面任何命令都是在windows的命令行工 ...

  9. 搭建vue的开发环境

    随手笔记:win7 64bit 1.安装node,直接从node官网下载,安装即可. 2.命令行输入 node -v 查看是否安装成功,显示node的版本号即安装成功.安装成功后,输入node,进入n ...

随机推荐

  1. salesforce零基础学习(一百零八)MFA

    本篇参考:https://security.salesforce.com/mfa https://sfdc.co/bvtuQT  (MFA官方研讨会的文档) https://sfdc.co/iwiQK ...

  2. RAC使用auto rolling的方式打补丁

    11.2.0.4 RAC 某系统主库使用auto rolling的方式打补丁在一节点执行1-5,结束后然后在二节点执行1-5,结束后最后再在某个节点执行6. 1.backup GI_HOME& ...

  3. B站视频:CocosCreator Bundle 特性三个实例详解,轻松实现大厅子游戏模式

    详细内容:https://forum.cocos.org/t/topic/112146

  4. vue 中级基础考察面试题

    vue 生命周期有哪些 beforeCreate created beforeMount mounted beforeUpdate updated activated deactivated befo ...

  5. MySQL8 根据某属性查询字段排名由自定义变量到rank()的变动

    在mysql8 之前的版本,因为没有rank()方法的存在,所以在对字段进行排名时,使用的是自定义自变量的方法,比如: select id,name,@rank=@rank+1 as ranks fr ...

  6. 洛谷2093 JZPFAR + KD-Tree学习笔记 (KD-Tree)

    KD-Tree这玩意还真的是有趣啊.... (基本完全不理解) 只能谈一点自己的对KD-Tree的了解了. 首先这个玩意就是个暴力... 他的结构有点类似二叉搜索树 每一层都是以一个维度作为划分标准. ...

  7. CF193D Two Segments (线段树+dp)(外加两个扩展题)

    大概算是个系列整理 (最强版是模拟赛原题)) 首先,我们先来看这个题目. QWQ一开始是毫无头绪,除了枚举就是枚举 首先,我们可以枚举一个右端点,然后算一下当前右端点的答案 我们令\(f[l,r]\) ...

  8. 【UE4 C++】UKismetMathLibrary 源代码

    // Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "CoreMinimal.h" # ...

  9. 2021.8.9考试总结[NOIP模拟34]

    T1 Merchant 如果$t=0$时不能达到$s$,那么所拿物品的价值一定关于时间单调递增,答案单调.因此可以特判$0$后二分. 用$sort$复杂度被卡,要用$\textit{nth_eleme ...

  10. 面试官问:说说你对Java函数式编程的理解

    常见的面试问题 总结一下,在Java程序员的面试中,经常会被问到类似这样的问题: Java中的函数式接口是什么意思? 注解 @FunctionalInterface 的作用是什么? 实现一个函数式接口 ...