溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么在vue-cli搭建的項(xiàng)目中增加后臺(tái)mock接口

發(fā)布時(shí)間:2021-02-20 11:31:37 來源:億速云 閱讀:164 作者:小新 欄目:web開發(fā)

這篇文章主要介紹了怎么在vue-cli搭建的項(xiàng)目中增加后臺(tái)mock接口,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

用vue-cli搭建一個(gè)前端開發(fā)環(huán)境確實(shí)是極其方便,在寫前端代碼肯定也是少不了需要調(diào)用后臺(tái)提供的業(yè)務(wù)接口進(jìn)行前后端交互,特別在敏捷開發(fā)中,前后端都要提前確定業(yè)務(wù)接口并進(jìn)行打樁,在開發(fā)過程中基本是沒有現(xiàn)成的后臺(tái)可以調(diào)用,基本上都是自己寫mock進(jìn)行模擬。

在vue-cli搭建的項(xiàng)目中,框架上用的是express的web框架,要做一個(gè)mock是很方便的。

假設(shè)前端頁(yè)面上需要獲取所有的新聞列表,那么就需要mock一個(gè)能夠返回所有新聞列表數(shù)據(jù)的接口。

接下來就在項(xiàng)目中實(shí)現(xiàn)mock功能。

腳手架生成項(xiàng)目

執(zhí)行命令用webpack模板生成一個(gè)名為vuestrap的項(xiàng)目(名字任意)

vue init webpack vue-mock-demo

在出現(xiàn)的各提示選項(xiàng)中,沒什么要求,為了方便,把不用的ESLint,unit tests,e2e都關(guān)掉(這些選項(xiàng)都隨意)。

? Project name vuestrap
? Project description A Vue.js project
? Author 省略
? Vue build standalone
? Install vue-router? Yes
? Use ESLint to lint your code? No
? Setup unit tests with Karma + Mocha? No
? Setup e2e tests with Nightwatch? No

選項(xiàng)選完,項(xiàng)目也就生成了。

執(zhí)行命令,安裝腳手架創(chuàng)建的組件

npm install

創(chuàng)建mock

和build、config等文件夾同級(jí)創(chuàng)建一個(gè)mock文件夾。

為了要mock一個(gè)獲取新聞列表的數(shù)據(jù)接口,我們?cè)趍ock文件夾下創(chuàng)建一個(gè)名為“router-news.js”的文件。

其中的內(nèi)容為:

var express = require('express');
var router = express.Router();

//對(duì)所有新聞的get進(jìn)行mock
router.get('/all', function(req, res, next) {
 //響應(yīng)mock數(shù)據(jù)
 res.json([{
  title: 'news-title-1' ,
  content: 'news-content-1'
 },
 {
  title: 'news-title-2' ,
  content: 'news-content-2'
 }]);
});

module.exports = router;

這里的完整url應(yīng)該是“/mock/news/all”,在這里只寫了“/all”子路徑。

在build/dev-server.js文件的頭部require區(qū)域,require上面寫的router。

var mockRouterNews = require('../mock/router-news')

最后,調(diào)用app.use將講url和router關(guān)聯(lián)。

app.use('/mock/news', mockRouterNews)

在這里,通過將url的拆分,可以明確的把url進(jìn)行處理的模塊化,一種業(yè)務(wù)可以交給對(duì)應(yīng)的router進(jìn)行響應(yīng)處理,在使用app.use關(guān)聯(lián)所有的router的地方也能看得很清楚。

注意:

使用app.use關(guān)聯(lián)url和router的代碼一定要放在對(duì)“connect-history-api-fallback”組件的app.use前,否則關(guān)聯(lián)的url會(huì)被攔截掉,不會(huì)被mock的router正確響應(yīng)。

怎么在vue-cli搭建的項(xiàng)目中增加后臺(tái)mock接口

執(zhí)行

在命令行中執(zhí)行命令運(yùn)行項(xiàng)目。

npm run dev

運(yùn)行后,在瀏覽器的地址欄中補(bǔ)上mock的url并訪問,就能看到mock的數(shù)據(jù)了,很方便。

怎么在vue-cli搭建的項(xiàng)目中增加后臺(tái)mock接口

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“怎么在vue-cli搭建的項(xiàng)目中增加后臺(tái)mock接口”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI