安裝cesium
在已有項目中執(zhí)行,
npm i cesium
修改配置
build/webpack.base.conf.js
1、定義 Cesium 源碼路徑
const cesiumSource = '../node_modules/cesium/Source''use strict'const path = require('path')const utils = require('./utils')const config = require('../config')const vueLoaderConfig = require('./vue-loader.conf')//--cesium--配置const cesiumSource = '../node_modules/cesium/Source'; 2、在output 里加入sourcePrefix: ' ' 讓webpack 正確處理多行字符串
3、配置 amd參數(shù)
4、module中在rules后添加 unknownContextCritical: false,
module.exports = {  context: path.resolve(__dirname, '../'),  entry: {    app: ["babel-polyfill", './src/main.js']  },  output: {    path: config.build.assetsRoot,    filename: '[name].js',    publicPath: process.env.NODE_ENV === 'production' ?      config.build.assetsPublicPath : config.dev.assetsPublicPath,    //--cesium--配置------------------------------------    sourcePrefix: ' '  },  //--cesium--配置----------------------------------------  amd:{    toUrlUndefined: true  },  resolve: {    extensions: ['.js', '.vue', '.json'],    alias: {      'vue$': 'vue/dist/vue.esm.js',      '@': resolve('src'),      //--cesium--配置      'cesium': path.resolve(__dirname, cesiumSource)    }  },  module: {    rules: [    ...    ],    //--cesium--配置-------------------------------------    //unknownContextRegExp: /^.//.*$/    unknownContextCritical: false,  }}build/webpack.dev.conf.js
1、定義 Cesium 源碼路徑和Cesium Workers 路徑
const cesiumSource = 'node_modules/cesium/Source'const cesiumWorkers = '../Build/Cesium/Workers'
(注意這里的 node_modules 與webpack.base.conf.js的不同,前面沒有../)
2、定義CESIUM_BASE_URL變量
3、在plugins 中加入下面插件,拷貝靜態(tài)資源
plugins: [  new webpack.DefinePlugin({   'process.env': require('../config/dev.env'),   //--cesium--配置-------------------------------------------   'CESIUM_BASE_URL': JSON.stringify('')   }),  new webpack.HotModuleReplacementPlugin(),  new webpack.NamedModulesPlugin(), // HMR shows correct file names in console on update.  new webpack.NoEmitOnErrorsPlugin(),  // https://github.com/ampedandwired/html-webpack-plugin  new HtmlWebpackPlugin({   filename: 'index.html',   template: 'index.html',   inject: true  }),  //--cesium--配置---------------------------------------------  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' } ]),  new CopyWebpackPlugin([ { from: path.join(cesiumSource, 'ThirdParty/Workers'), to: 'ThirdParty/Workers' } ]),  new CopyWebpackPlugin([ { from: 'ThirdParty', to: 'ThirdParty' } ]),  // copy custom static assets  new CopyWebpackPlugin([   {    from: path.resolve(__dirname, '../static'),    to: config.dev.assetsSubDirectory,    ignore: ['.*']   }  ]) ]            
新聞熱點
疑難解答
圖片精選