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

詳解vue-cli 本地開發(fā)mock數(shù)據(jù)使用方法

 更新時間:2018年05月29日 10:27:50   作者:蘿卜粥_Carrot  
這篇文章主要介紹了詳解vue-cli 本地開發(fā)mock數(shù)據(jù)使用方法,如果后端接口尚未開發(fā)完成,前端開發(fā)一般使用mock數(shù)據(jù)。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

vue-cli 中可以通過配置 proxyTable 解決開發(fā)環(huán)境的跨域問題,具體可以參考這篇文章:Vue-cli proxyTable 解決開發(fā)環(huán)境的跨域問題

如果后端接口尚未開發(fā)完成,前端開發(fā)一般使用mock數(shù)據(jù)。

mock方法有多種多樣,這里給出兩種:

方法一: 使用express搭建靜態(tài)服務

mock數(shù)據(jù)寫在json文件中,proxyTable 里將接口代理到具體mock數(shù)據(jù)json文件上。

具體方法:

創(chuàng)建 mock 文件夾

build/dev-server.js 中添加如下代碼

npm run dev 啟動后,可以通過 http://localhost:8080/mock/db.json 訪問數(shù)據(jù),proxyTable對應設(shè)置代理即可(代理設(shè)置方法與解決跨域方法相似)

方法二 使用 JSON Server 搭建 Mock 服務器

JSON Server 是一個創(chuàng)建偽RESTful服務器的工具,具體使用方法可以看官方文檔,這里直接講在vue-cli 中的用法。

配置流程

全局安裝 $ npm install -g json-server

項目目錄下創(chuàng)建 mock 文件夾

mock 文件夾下添加 db.json 文件,內(nèi)容如下

{
 "posts": [
 { "id": 1, "title": "json-server", "author": "typicode" }
 ],
 "comments": [
 { "id": 1, "body": "some comment", "postId": 1 }
 ],
 "profile": { "name": "typicode" }
}

package.json 添加命令

"mock": "json-server --watch mock/db.json",
 "mockdev": "npm run mock & npm run dev"

啟動 mock 服務器

$ npm run mock 命令 運行 mock server

訪問 http://localhost:3000/

發(fā)現(xiàn) db.json 下第一級 json 對象被解析成為可訪問路徑

GET請求具體路徑 如:http://localhost:3000/posts 可獲取數(shù)據(jù)

faker.js 批量生成偽數(shù)據(jù)

如果需要大量的偽數(shù)據(jù),手動構(gòu)造比較費時費力,可以使用faker.js 批量生成。faker.js 的具體使用參見官方文檔,這里做一個示例。

$ cnpm install faker -G 全局安裝 faker

mock 目錄下創(chuàng)建 faker-data.js,內(nèi)容如下

module.exports = function () {
 var faker = require("faker");
 faker.locale = "zh_CN";
 var _ = require("lodash");
 return {
  people: _.times(100, function (n) {
   return {
    id: n,
    name: faker.name.findName(),
    avatar: faker.internet.avatar()
   }
  }),
  address: _.times(100, function (n) {
   return {
    id: faker.random.uuid(),
    city: faker.address.city(),
    county: faker.address.county()
   }
  })
 }
}

$ json-server mock/faker-data.js 在 json server 中使用 faker

請求 http://localhost:3000/address 可以獲取到隨機生成的100組偽數(shù)據(jù)

添加中間件

json server 使用 RESTful 架構(gòu),GET請求可以獲取數(shù)據(jù),POST 請求則是添加數(shù)據(jù)。
在開發(fā)過程中,有時候想直接模擬獲取POST請求返回結(jié)果,可以添加 express 中間件 將POST請求轉(zhuǎn)為GET請求。

mock 目錄下創(chuàng)建 post-to-get.js,內(nèi)容如下

module.exports = function (req, res, next) {
 req.method = "GET";
 next();
}

啟動命令添加運行中間件 --m mock/post-to-get.js

"mock": "json-server --watch mock/db.json --m mock/post-to-get.js",

重新啟動服務,POST請求就被轉(zhuǎn)換為GET請求了

其他需求也可以通過添加不同的中間件實現(xiàn)。

代理設(shè)置

config/index.js proxyTable 將請求映射到 http://localhost:3000

代碼中添加請求以測試效果

$ npm run mockdev 啟動帶mock 數(shù)據(jù)的本地服務

結(jié)果如下:

整體代碼:https://github.com/carrotz/vue-cli-mock

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue?cli3配置image-webpack-loader方式

    vue?cli3配置image-webpack-loader方式

    這篇文章主要介紹了vue?cli3配置image-webpack-loader方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • 關(guān)于ELement?UI時間控件el-date-picker誤差8小時的問題

    關(guān)于ELement?UI時間控件el-date-picker誤差8小時的問題

    本文探討了在使用Vue前端框架配合ElementUI開發(fā)時,遇到日期時間選擇器DateTimePicker的時間同步問題,通過揭示中國東八區(qū)與格林威治時間的時差,作者提供了設(shè)置value-format屬性的解決方案,以確保后端接收到的正確時間格式
    2024-08-08
  • vue中v-if失效原因及解決方法

    vue中v-if失效原因及解決方法

    本文主要介紹了vue中v-if失效原因及解決方法,一般v-if失效都是和綁定變量有關(guān),下面就來具體介紹一下,感興趣的可以了解一下
    2023-09-09
  • vue3+element?plus中利用el-menu如何實現(xiàn)路由跳轉(zhuǎn)

    vue3+element?plus中利用el-menu如何實現(xiàn)路由跳轉(zhuǎn)

    這篇文章主要給大家介紹了關(guān)于vue3+element?plus中利用el-menu如何實現(xiàn)路由跳轉(zhuǎn)的相關(guān)資料,在Vue?Router中我們可以使用el-menu組件來實現(xiàn)菜單導航,通過點擊菜單項來跳轉(zhuǎn)到不同的路由頁面,需要的朋友可以參考下
    2023-12-12
  • 一文讀懂vue動態(tài)屬性數(shù)據(jù)綁定(v-bind指令)

    一文讀懂vue動態(tài)屬性數(shù)據(jù)綁定(v-bind指令)

    這篇文章主要介紹了vue動態(tài)屬性數(shù)據(jù)綁定(v-bind指令)的相關(guān)資料,文中講解非常細致,代碼幫助大家更好的理解和學習,感興趣的朋友可以了解下
    2020-07-07
  • 詳解hooks在vue3中的使用方法及示例

    詳解hooks在vue3中的使用方法及示例

    hooks可以通過特定的函數(shù)將邏輯 "鉤入" 組件中,使得開發(fā)者能夠更靈活地構(gòu)建和管理組件的功能從而提高代碼的可讀性以及可維護性等,本篇文章將介紹hooks如何在vue3中使用以及它的一些實際使用例子,讓大家能更好的了解和使用hooks,需要的朋友可以參考下
    2023-09-09
  • 在VUE style中使用data中的變量的方法

    在VUE style中使用data中的變量的方法

    這篇文章主要介紹了在VUE style中使用data中的變量的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-06-06
  • vue3通過ref獲取子組件defineExpose的數(shù)據(jù)和方法

    vue3通過ref獲取子組件defineExpose的數(shù)據(jù)和方法

    defineExpose是Vue3中新增的選項,用于向父組件暴露子組件內(nèi)部的屬性和方法,通過defineExpose,子組件可以主動控制哪些屬性和方法可以被父組件訪問,本文主要介紹了vue3通過ref獲取子組件defineExpose的數(shù)據(jù)和方法,需要的朋友可以參考下
    2023-10-10
  • Vue中tinymce富文本功能配置詳解

    Vue中tinymce富文本功能配置詳解

    TinyMCE是一款易用、且功能強大的所見即所得的富文本編輯器,跟其他富文本編輯器相比,有著豐富的插件,支持多種語言,能夠滿足日常的業(yè)務需求并且免費,本文小編給大家詳細介紹了Vue中tinymce富文本功能配置,需要的朋友可以參考下
    2023-11-11
  • 五分鐘理解keep?alive用法及原理

    五分鐘理解keep?alive用法及原理

    這篇文章主要為大家介紹了keep?alive用法及原理示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07

最新評論

稻城县| 景宁| 仙桃市| 石阡县| 菏泽市| 桓台县| 秀山| 合江县| 巩义市| 兰州市| 宜丰县| 湟源县| 成武县| 常德市| 韶关市| 达孜县| 阳原县| 仪征市| 盱眙县| 咸丰县| 邵阳市| 永胜县| 宜兰县| 亚东县| 丰顺县| 保靖县| 磐石市| 盘山县| 华池县| 克拉玛依市| 论坛| 南京市| 永泰县| 抚顺县| 鄂尔多斯市| 进贤县| 灵宝市| 唐河县| 三江| 滕州市| 苗栗县|