vue搭建本地JSON靜態(tài)數(shù)據(jù)服務(wù)器全過程
在日常開發(fā)中,可能由于后端任務(wù)較重,接口不能及時提供給前端,領(lǐng)導(dǎo)要求先展示頁面的要求下,這個時候就需要假數(shù)據(jù),如果自己data里面定義假數(shù)據(jù)或html中直接寫死,如果頁面多了,后面接口提供的時候,修改會很麻煩。
此文提供一種本地本地json serve方案,除上述問題,此方案更加可以方便和后端協(xié)商所需數(shù)據(jù)字段格式.
一.僅供本地測試用,無法部署在服務(wù)器上取數(shù)據(jù)
1.安裝全局的json-server工具包 npm install -g json-server
2.在項目更目錄(src同級)下創(chuàng)建mock文件夾,名字隨便,約定俗成為mock,新建json文件,
代碼如下:
{ "naturalDisastersData": [ { "id": 1, "typeName": "自然災(zāi)害左側(cè)監(jiān)測預(yù)警列表數(shù)據(jù)", "topIconList": [ { "name": "江山", "event": "30", "value": "0", "type": "雨量預(yù)警" }, { "name": "長臺村", "event": "30", "value": "0", "type": "雨量預(yù)警" }, { "name": "常山關(guān)莊橋村", "event": "10", "value": "0.1", "type": "水位預(yù)警" }, { "name": "衢江橫路鄉(xiāng)", "event": "30", "value": "0.1", "type": "水位預(yù)警" }, { "name": "峽東村", "event": "30", "value": "3.4", "type": "風(fēng)力預(yù)警" }, { "name": "江山", "event": "30", "value": "2.2", "type": "風(fēng)力預(yù)警" }, { "name": "疾病預(yù)防控制中心", "event": "-", "value": "-", "type": "森林防火" }, { "name": "虎山消防救援站", "event": "-", "value": "-", "type": "森林防火" }, { "name": "鳳林鎮(zhèn)", "event": "147", "value": "-", "type": "地質(zhì)災(zāi)害" }, { "name": "壇石鎮(zhèn)", "event": "119", "value": "-", "type": "地質(zhì)災(zāi)害" } ] } ], "success": true }
3.將json文件右鍵在終端中打開 啟動命令:
(1):json-server --watch index.json --port 8080 默認(rèn)是3000 可以自行改端口 watch 后接json文件名
(2):上面的啟動命令,只有輸入localshot:端口號才可以訪問,當(dāng)前我想輸入本地的ip+端口號就無法訪問,所以更改啟動命令如下:
json-server --watch --host 0.0.0.0 db.json --port 3000 host后接本地ip (cmd 輸入ipconfig)
(3):以上2種命令啟動每次都要輸入很長代碼,vue中可以在package.json中配置快捷命令,如圖
代碼如下:
"mock": " cd mock&json-server --watch --host 0.0.0.0(本機(jī)ip) --port 3000 index.json",
如果mock文件夾寫在根目錄,則直接cd一級就行,自行根據(jù)自己mock文件夾目錄層級更改,多個json文件重新取名,將mock改為mock1,mock2...即可,后面命令改所需文件名就行
npm run mock 成功運(yùn)行效果如下:
(4):點(diǎn)開鏈接進(jìn)去如圖:
點(diǎn)擊資源鏈接進(jìn)去如圖:
至此:服務(wù)端口創(chuàng)建成功
4.調(diào)用
即把你axios請求url 改成上圖打開資源鏈接的瀏覽器url就行,至此,第一種方法結(jié)束,此方法僅限本地模擬使用,因為需要本地開啟啟動命令,暫時不明確如何配置在部署服務(wù)器后自動啟動.
接口情況入圖:
二:不模擬外部數(shù)據(jù)端口形式
不做額外配置,無需額外啟動命令,可以在部署服務(wù)器后自動獲取數(shù)據(jù)。(推薦)
1.同理創(chuàng)建json文件夾下的json文件,不過注意要放到public文件夾下! ! !
2.配置vue.config.js publicpath,代碼如下
module.exports = { lintOnSave: false, publicPath: '/simulationJsondata/', outputDir: 'jsmartScreen', };
3.aixos url為json文件路徑,(配置靜態(tài)資源路徑為了方便部署服務(wù)器),
直接回調(diào)里面return axios請求即可,自行封裝的axios也無影響!
aa() { return http.get(`../../simulationJsondata/jsonData/naturalDisastersData.json`) }
接口情況入圖:
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue中手動封裝iconfont組件解析(三種引用方式的封裝和使用)
這篇文章主要介紹了vue中手動封裝iconfont組件(三種引用方式的封裝和使用),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-09-09Vue中的 mixins 和 provide/inject詳解
這篇文章主要介紹了Vue中的 mixins 和 provide/inject詳解,本文結(jié)合實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-07-07詳解在WebStorm中添加Vue.js單文件組件的高亮及語法支持
本篇文章主要介紹了詳解在WebStorm中添加Vue.js單文件組件的高亮及語法支持,非常具有實用價值,需要的朋友可以參考下2017-10-10Vue解決element-ui消息提示$message重疊問題
這篇文章主要為大家介紹了Vue解決element-ui消息提示$message重疊問題,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08Vue組件庫ElementUI實現(xiàn)表格加載樹形數(shù)據(jù)教程
這篇文章主要為大家詳細(xì)介紹了Vue組件庫ElementUI實現(xiàn)表格加載樹形數(shù)據(jù)教程,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-06-06整理項目中vue.config.js打包優(yōu)化配置方法
這篇文章主要介紹了整理項目中vue.config.js打包優(yōu)化,包括配置?webpack-bundle-analyzer?插件查看文件大小及配置compression-webpack-plugin?用gzip壓縮打包的文件大小,本文結(jié)合實例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-02-02