vue+cesiumjs的環境搭建【script引入】


【可以看我的博客里另外一篇----- import引入 ,可以不用script引入】

地址:https://www.cnblogs.com/reround/p/12020661.html

最近做項目要用到cesium,然后參照網上的一些步驟,最后發現報錯了,其中有兩種錯比較多:

                ①  This dependency was not found:     * cesium/Cesium in ./src/main.js.      To install it, you can run: npm install --save cesium/Cesium

                ②  prototype ‘Viewer’ undefined

               然后就各種查閱各種調試,終於弄好了,現在來跟大家分享一下。

①鼠標右鍵桌面,打開Git Bash Here

 

②安裝vue-cli

npm install vue-cli -g

 

③建立一個基於webpack的vue項目

vue init webpack drafting(drafting為項目名稱,不能用中文)

 

④進入在桌面已創建好的 drafting 文件,啟動項目

cd drafting =========》 npm run dev

此時就建立了一個基礎的vue項目

 

⑤安裝cesium.js

npm install cesium --save

 

⑥修改cesium的webpack配置

    1.修改build/webpack.base.conf.js文件

       1.1   添加1行代碼:

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

        1.2 添加modules.exports的內容

        在modules.exports模塊中添加 

amd: {
    toUrlUndefined: true },

        再在modules.exports模塊中的output里添加

sourcePrefix: ' '

        最后在modules.exports模塊中的resolve里的alisa里添加

'cesium': path.resolve(__dirname, cesiumSource)        注: __dirname 是兩個小下划線

        1.3 在module模塊中加入

unknownContextCritical: false

 

    2.修改 build/webpack.dev.conf.js 文件

        2.1 添加2行代碼

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

        2.2 在plugins模塊中加入

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

    3.修改build/webpack.prod.conf.js 文件

        3.1添加2行代碼

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

        3.2 在plugins 模塊中添加

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

    4.修改config/index.js 文件

        4.1 將 assetsPublicPath的值設置為空

assetsPublicPath: '',

=============================================(重點來了)======================================================

一般都是做到這一步,然后就在mainjs里面導入 cesium 導入樣式 然后初始化 但是這樣報錯就來了,那我們應該怎么做呢?

首先到  node_modules/cesium/Build/Cesium 文件,可以看到里面還有四個文件夾和Cesiumjs

 

直接復制Cesium文件夾 粘貼到 根目錄的 static文件夾里

mainjs中不需要手動導入任何文件,默認就好,然后打開index.html,用script標簽去引入cesiumjs

 

最后我們去到HelloWorld.vue( 如果像我一樣測試的話可以不用改名,在實際項目中一定要改名字,改了組件的名字不要忘了也要修改路由里的名字 )文件里

記得這個地方還要引入css,不然樣式會錯亂的。保存一下,啟動項目,打開瀏覽器(如果配置正確了,8080端口沒有被占用,一般都是localhost:8080)也可以在config/index.js 里修改port端口號

打開網頁后:

這里面一些小空間很煩人,如果你不需要可以去掉,在初始化中配置:

這些具體某個是干嘛用的 ,大家可以查閱一下,有這方面的文檔)

去掉后:

(這默認打開的是美洲的視角,如果我們想一進來就把視角放在中國呢)

加完之后 ,刷新頁面,你看到的就是這樣了:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



猜您在找 vue+cesiumjs環境搭建【import引入】 如何用 script 引入 Vue 【安裝】Vue( 直接使用