最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue3+TypeScript集成Mock的方法

 更新時間:2025年04月24日 09:35:13   作者:碼農(nóng)張3  
這篇文章主要介紹了Vue3+TypeScript集成Mock的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧

mock.js用來做什么

在項目開發(fā)中,會通過調(diào)用接口來獲取數(shù)據(jù),然后進(jìn)行渲染?,F(xiàn)在前后端分離開發(fā),有時后端并不能夠及時開發(fā)完成接口,這個時候我們就可以通過mock.js來模擬產(chǎn)生一些虛擬的數(shù)據(jù),可以讓前端在后端接口還沒有開發(fā)出來時獨立開發(fā),使項目可以正常進(jìn)行,節(jié)約了寶貴時間,等到后端接口編寫完畢后,再替換成真正的接口就方便快捷很多。

安裝依賴

pnpm install -D vite-plugin-mock mock.js

注冊插件

vite.config.ts

...
import { defineConfig } from 'vite'
import { viteMockServe } from 'vite-plugin-mock'
...
export default defineConfig(() => {
  return {
    plugins: [
      vue(),
      viteMockServe({
        // mockPath: 'mock', // 默認(rèn)
        enable: true,
      }),
    ],
  }
})

原代碼 defineConfig({...}) 現(xiàn)在要改成 defineConfig(() => {return{...}})
參考網(wǎng)址:https://github.com/vbenjs/vite-plugin-mock/blob/main/README.zh_CN.md

創(chuàng)建假接口

/mock/user.ts

// 用戶信息數(shù)據(jù),createUserList:此函數(shù)執(zhí)行會返回一個數(shù)組,數(shù)組里面包含兩個用戶信息
function createUserList() {
  return [
    {
      userId: 1,
      avatar:
        'https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif',
      username: 'admin',
      password: '111111',
      desc: '平臺管理員',
      roles: ['平臺管理員'],
      buttons: ['cuser.detail'],
      routes: ['home'],
      token: 'Admin Token',
    },
    {
      userId: 2,
      avatar:
        'https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif',
      username: 'system',
      password: '111111',
      desc: '系統(tǒng)管理員',
      roles: ['系統(tǒng)管理員'],
      buttons: ['cuser.detail', 'cuser.user'],
      routes: ['home'],
      token: 'System Token',
    },
  ]
}
//對外暴露一個數(shù)組:數(shù)組里面包含兩個接口
//登錄假的接口
//獲取用戶信息的假的接口
export default [
  // 用戶登錄接口
  {
    url: '/api/user/login',//請求地址
    method: 'post',//請求方式
    response: ({ body }) => {
      //獲取請求體攜帶過來的用戶名與密碼
      const { username, password } = body;
      //調(diào)用獲取用戶信息函數(shù),用于判斷是否有此用戶
      const checkUser = createUserList().find(
        (item) => item.username === username && item.password === password,
      )
      //沒有用戶返回失敗信息
      if (!checkUser) {
        return { code: 201, data: { message: '賬號或者密碼不正確' } }
      }
      //如果有返回成功信息
      const { token } = checkUser
      return { code: 200, data: { token } }
    },
  },
  // 獲取用戶信息
  {
    url: '/api/user/info',
    method: 'get',
    response: (request) => {
      //獲取請求頭攜帶token
      const token = request.headers.token;
      //查看用戶信息是否包含有次token用戶
      const checkUser = createUserList().find((item) => item.token === token)
      //沒有返回失敗的信息
      if (!checkUser) {
        return { code: 201, data: { message: '獲取用戶信息失敗' } }
      }
      //如果有返回成功信息
      return { code: 200, data: { checkUser } }
    },
  },
]

安裝 axios

pnpm i axios

使用測試

/main.ts 臨時測試

...
import axios from 'axios'
axios({
  url: '/api/user/login',
  method: 'post',
  data: {
    username: 'admin',
    password: '111111'
  }
})
app.mount('#app')

到此這篇關(guān)于Vue3+TypeScript集成Mock的方法的文章就介紹到這了,更多相關(guān)Vue TypeScript集成Mock內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue2中如何更改el-dialog出場動畫(el-dialog彈窗組件)

    vue2中如何更改el-dialog出場動畫(el-dialog彈窗組件)

    el-dialog是一個十分好用的彈窗組件,但是出場動畫比較單調(diào),于是決定自定義一個出場動畫,本文通過實例代碼圖文相結(jié)合給大家敘述下實現(xiàn)思路,感興趣的朋友一起看看吧
    2022-06-06
  • vue的簡介及@vue/cli?腳手架的使用示例

    vue的簡介及@vue/cli?腳手架的使用示例

    vue 是一個 漸進(jìn)式的javascript框架,腳手架是一個通用概念,幫助搭建項目的工具,本文以vue2為例結(jié)合實例代碼給大家詳細(xì)講解,感興趣的朋友跟隨小編一起看看吧
    2022-12-12
  • vue shallowRef作用及引發(fā)問題詳解

    vue shallowRef作用及引發(fā)問題詳解

    這篇文章主要為大家介紹了vue shallowRef作用及引發(fā)問題詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • vue和js中實現(xiàn)模糊查詢方式

    vue和js中實現(xiàn)模糊查詢方式

    這篇文章主要介紹了vue和js中實現(xiàn)模糊查詢方式,具有很好的參考價值,希望對大家有所幫助。也希望大家多多支持腳本之家
    2022-08-08
  • vue項目在打包時,如何去掉所有的console.log輸出

    vue項目在打包時,如何去掉所有的console.log輸出

    這篇文章主要介紹了vue項目在打包時,如何去掉所有的console.log輸出,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • Vue模仿實現(xiàn)京東商品大圖放大鏡效果

    Vue模仿實現(xiàn)京東商品大圖放大鏡效果

    這篇文章主要為大家介紹了Vue實現(xiàn)京東網(wǎng)站商品放大鏡效果示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • vue組件實現(xiàn)首次加載就觸發(fā)watch

    vue組件實現(xiàn)首次加載就觸發(fā)watch

    這篇文章主要介紹了vue組件實現(xiàn)首次加載就觸發(fā)watch方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • 使用Vue的slot插槽分發(fā)父組件內(nèi)容實現(xiàn)高度復(fù)用、更加靈活的組件(推薦)

    使用Vue的slot插槽分發(fā)父組件內(nèi)容實現(xiàn)高度復(fù)用、更加靈活的組件(推薦)

    這篇文章主要介紹了使用Vue的slot插槽分發(fā)父組件內(nèi)容實現(xiàn)高度復(fù)用、更加靈活的組件 ,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2018-05-05
  • Vue實現(xiàn)網(wǎng)頁轉(zhuǎn)PDF方法流程詳解

    Vue實現(xiàn)網(wǎng)頁轉(zhuǎn)PDF方法流程詳解

    在日常的工作中,有時候會碰到需要將某個網(wǎng)址網(wǎng)頁保存成為pdf的情況,這篇文章主要介紹了用Vue實現(xiàn)網(wǎng)頁轉(zhuǎn)PDF的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • vue3+vite兼容低版本的白屏問題詳解(安卓7/ios11)

    vue3+vite兼容低版本的白屏問題詳解(安卓7/ios11)

    這篇文章主要給大家介紹了關(guān)于vue3+vite兼容低版本的白屏問題的相關(guān)資料,還給大家介紹了vue打包項目以后白屏和圖片加載不出來問題的解決方法,需要的朋友可以參考下
    2022-12-12

最新評論

清徐县| 阿克苏市| 文成县| 萨迦县| 墨竹工卡县| 城市| 绥棱县| 临猗县| 贵定县| 永州市| 平阳县| 山阳县| 治县。| 武川县| 琼海市| 南丰县| 玛多县| 独山县| 土默特右旗| 嘉善县| 绵竹市| 涿州市| 电白县| 吉水县| 噶尔县| 宝山区| 固阳县| 岳普湖县| 麻栗坡县| 宜春市| 清远市| 焉耆| 彭泽县| 正蓝旗| 新建县| 青川县| 弥勒县| 广西| 孝感市| 垣曲县| 土默特右旗|