1.安装依赖
npm i cesium -s
2.引入插件,初始化项目
<template>
<div class="cesium_map">
<div id="cesiumContainer"></div>
</div>
</template>
<script>
import * as Cesium from 'cesium';
import "cesium/Build/Cesium/Widgets/widgets.css";
export default {
name: "CesiumMap",
components: {
},
data() {
return {
viewer: null
};
},
methods: {
initMap() {
// token是要自己去官网注册获取
Cesium.Ion.defaultAccessToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI0NTQ3YWY0MS1jOWJlLTRmNTctYjMzNC02MWMzNTg2NjU4OGEiLCJpZCI6OTc2ODYsImlhdCI6MTY1NTI4NDg3Mn0.Ykrdu4JQiFyAcmJafyZtBqAbtaVenGSlMOVFh8IklsM';
this.viewer = new Cesium.Viewer("cesiumContainer");
}
},
created() {},
mounted() {
this.initMap();
},
};
</script>
<style scoped>
.cesium_map{
font-size: 20px;
width: 100vw;
height: 100vh;
}
</style>
3.解决报错,安装依赖
copy-webpack-plugin@6 --save-dev //这里用的是6版本,会跟webpack有兼容问题,注意版本选择
4.配置vue.config.js
const Path = require("path");
const CopyWebpackPlugin = require('copy-webpack-plugin');
const webpack = require('webpack');
module.exports = {
configureWebpack: {
// 解决静态资源引入路径问题
plugins: [
new CopyWebpackPlugin({
patterns: [
{ from: Path.resolve('./node_modules/cesium/Source/Workers'), to: 'Workers' },
{ from: Path.resolve('./node_modules/cesium/Source/Assets'), to: 'Assets' },
{ from: Path.resolve('./node_modules/cesium/Source/Widgets'), to: 'Widgets' },
{ from: Path.resolve('./node_modules/cesium/Source/ThirdParty/Workers'), to: 'WoThirdParty/Workersrkers' },
]
}),
// 解决无法确定base路径问题
new webpack.DefinePlugin({
CESIUM_BASE_URL: JSON.stringify('./')
})
],
//解决打包导出文件错误
module: {
unknownContextCritical: false
}
}
}
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。