在vue-cli的项目中使用mars3d需要通过 copy-webpack-plugin 来处理cesium的一些静态资源依赖。
const CopyWebpackPlugin = require('copy-webpack-plugin');
// 导入插件和 webpack
const webpack = require('webpack')
//导入cesium资源
let cesiumSource = 'node_modules/mars3d-cesium/Build/Cesium/'
configureWebpack: {
plugins: [
new CopyWebpackPlugin([{from: path.join(cesiumSource, 'Workers'), to: 'Workers'}]),
new CopyWebpackPlugin([{from: path.join(cesiumSource, 'Assets'), to: 'Assets'}]),
new CopyWebpackPlugin([{from: path.join(cesiumSource, 'Widgets'), to: 'Widgets'}]),
new CopyWebpackPlugin([{from: path.join(cesiumSource, 'ThirdParty'),to: 'ThirdParty'}]),
new webpack.DefinePlugin({CESIUM_BASE_URL: JSON.stringify('./')})
],
},
- 由于vite相比较于webpack在开发环境中巨大的效率提升,在vite中,mars3d官方提供了插件来处理这个问题,具体使用方式为 ```javascript // 安装 npm install vite-plugin-mars3d -D
// 导入 import mars3dPlugin from ‘vite-plugin-mars3d’;
// 在vite的plugins选项中添加 mars3dPlugin() ```