Vue2.x集成Cesium

本文档详细介绍了如何在Vue2.x项目中安装和配置Cesium,包括通过npm安装,修改webpack配置文件以处理Cesium资源,以及在main.js中引入Cesium库。主要步骤包括修改webpack的base, dev和prod配置,以及在main.js中设置全局变量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、Vue2.x安装Cesium,执行命令:

cnpm install cesium --save

2、修改build文件夹下的3个配置文件:webpack.base.conf.js、webpack.dev.conf.js、webpack.prod.conf.js

(1)修改webpack.base.conf.js文件

const cesiumSource = '../node_modules/cesium/Source'

修改module.exports如下图所示: 

在modules.exports模块中的output里添加

sourcePrefix: ' '

在modules.exports模块中添加

 amd: {
    toUrlUndefined: true
  },

在modules.exports模块中的resolve里的alisa里添加

'cesium': path.resolve(__dirname, cesiumSource)

修改module如下图所示:

在module模块中的rules中添加:

 {
     //Strip cesium pragmas 删除编译指示               //flag
     test: /\.js$/,
     enforce: 'pre',
     include: path.resolve(__dirname, cesiumSource),
     use: [{
       loader: 'strip-pragma-loader',
       options: {
         pragmas: {
           debug: false
         }
       }
     }]
  },

在module中添加:

unknownContextCritical: false  //屏蔽警告

(2)修改webpack.dev.conf.js文件

const cesiumSource = 'node_modules/cesium/Source'
const cesiumWorkers = '../Build/Cesium/Workers'

修改devWebpackConfig如下图所示:

在devWebpackConfig模块的plugins中添加:

'CESIUM_BASE_URL': JSON.stringify('')
 new CopyWebpackPlugin([{
      from: path.join(cesiumSource, cesiumWorkers),
      to: 'Workers'
    }]), //flag
    new CopyWebpackPlugin([{
      from: path.join(cesiumSource, 'Assets'),
      to: 'Assets'
    }]),
    new CopyWebpackPlugin([{
      from: path.join(cesiumSource, 'Widgets'),
      to: 'Widgets'
    }]),

(3)修改webpack.prod.conf.js文件

const cesiumSource = 'node_modules/cesium/Source'; //flag
const cesiumWorkers = '../Build/Cesium/Workers';

 修改webpackConfig如下图所示:

在webpackConfig模块的plugins中添加:

'CESIUM_BASE_URL': JSON.stringify('static')
 new CopyWebpackPlugin([{
      from: path.join(cesiumSource, cesiumWorkers),
      to: 'static/Workers'
    }]), //flag
    new CopyWebpackPlugin([{
      from: path.join(cesiumSource, 'Assets'),
      to: 'static/Assets'
    }]),
    new CopyWebpackPlugin([{
      from: path.join(cesiumSource, 'Widgets'),
      to: 'static/Widgets'
    }]),

3、在main.js中引入cesium

//新版本的cesium 不支持以前的import 方式导入  这是个坑
var Cesium = require('cesium/Cesium.js');
var widgets = require('cesium/Widgets/widgets.css');
Vue.prototype.Cesium = Cesium
Vue.prototype.widgets = widgets

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值