react集成cesium

1.更新node.js

     window下的node.js不能通过命令来更新

     先卸载旧node.js,如果之前是用安装包安装的,需要在系统卸载里面找到卸载并删除相关文件;如果是直接拷贝的别人的文件,直接删除文件即可

     下载新的node安装包,node安装包下载地址,默认安装即可

     cmd命令查看node npm的版本

2.搭建新的react项目

     1.全局安装create-react-app,cmd打开命令窗口,输入npm install create-react-app

     2.选择F盘新建目录newProject,打开newProject的命令窗口,输入create-react-app demo(demo是新搭建的项目名称)

     3.demo搭建完成后来集成cesium

3.集成cesium的方法有两种

   1.将项目中所需的cesium文件复制到demo/public中,在demo/public/index.html中引入

        1.下载cesiumJs文件,cesium,js下载地址或者是在demo中npm安装cesium

        2.将所需的文件复制到demo/public

所需cesiumJs文件

        3.demo/public/index.html引入js css

引入cesium的js css文件

        4.创建文件应用即可

   2.webpack集成cesium

        1.demo中npm安装cesium及webpack插件,npm install cesium --save          npm install --save-dev copy-webpack-plugin

        2.安装完成后需要先提交才能执行下一步,git add .     git commit -m 'init'

        3.webpack配置cesium

           create-react-app 创建的项目,默认会隐藏 webpack 的配置项,所以需要将 webpack 配置文件提取出来

           demo命令窗口中npm run eject,完成后会出现config scripts文件

之后出现config scripts

           打开config/webpack.config.js,配置cesium

           // Cesium源码所在目录

            const cesiumSource = 'node_modules/cesium/Source'

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

            const cesiumWorkers = '../Build/Cesium/Workers'

            const CopywebpackPlugin = require('copy-webpack-plugin');

            output: {

                    ...

                    //需要编译Cesium中的多行字符串

                      sourcePrefix: ''

            }

            amd: {

                    //允许Cesium兼容 webpack的require方式

                    toUrlUndefined: true

            },

            node: {

                // 解决fs模块的问题(Resolve node module use of fs)

                fs: 'empty'

            },

            plugins: [

                    ...

                    // 拷贝Cesium 资源、控价、web worker到静态目录

                      new CopywebpackPlugin({

                        patterns: [

                            { from: path.join(cesiumSource, cesiumWorkers), to: 'Workers' }

                        ],

                        }),

                      new CopywebpackPlugin({

                            patterns: [

                            { from: path.join(cesiumSource, 'Assets'), to: 'Assets' }

                        ],

                    }),

                    new CopywebpackPlugin({

                        patterns: [

                            { from: path.join(cesiumSource, 'Widgets'), to: 'Widgets' }

                        ],

                    }),

            ]

        4.配置完成,将cesium.js和widgets.css复制到public中,在index.html中引入

          5.这些操作完成后创建文件应用即可

注意:react集成leaflet时leaflet.css也需要在index.html中引入

你可能感兴趣的:(react集成cesium)