1:vue.config.js
const NodePolyfillPlugin = require('node-polyfill-webpack-plugin');
const CopyWebpackPlugin = require('copy-webpack-plugin');
chainWebpack: (config) => {
config.resolve.alias.set('cesium', path.resolve(__dirname, './node_modules/cesium/'));
},
configureWebpack: (config) => {
config.plugins.push(new NodePolyfillPlugin());
config.plugins.push(
new CopyWebpackPlugin({
patterns: [
{
from: 'node_modules/cesium/Build/Cesium/Workers',
to: 'Workers',
},
],
}),
);
config.plugins.push(
new CopyWebpackPlugin({
patterns: [
{
from: 'node_modules/cesium/Build/Cesium/ThirdParty',
to: 'ThirdParty',
},
],
}),
);
config.plugins.push(
new CopyWebpackPlugin({
patterns: [
{
from: 'node_modules/cesium/Build/Cesium/Assets',
to: 'Assets',
},
],
}),
);
config.plugins.push(
new CopyWebpackPlugin({
patterns: [
{
from: 'node_modules/cesium/Build/Cesium/Widgets',
to: 'Widgets',
},
],
}),
);
config.plugins.push(
new webpack.DefinePlugin({
CESIUM_BASE_URL: JSON.stringify('/'),
}),
);
},
2:main.js
import 'cesium/Source/Widgets/widgets.css';