栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > Web开发 > Vue.js

vue-cli项目中使用mockjs模拟数据

Vue.js 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

vue-cli项目中使用mockjs模拟数据

mockjs.png

为何

之前写过一篇文章vue-cli项目中怎么mock数据?,虽然这种方法不错,但是显然存在一个很明显的弊端,那就是要自己手写数据,因此我现在推荐大家使用mockjs,至于好处大家就手动点进去了解啦。

vue-cli项目中如何使用
  • 在项目中安装mockjs、axios(http请求库)

cnpm install mockjs axios --save
  • 在项目中新建一个mock.js文件,用于定义接口返回的数据

  • 在main.js引入mock.js

mock.js

const Mock = require('mockjs') // 获取mock对象const Random = Mock.Random // 获取random对象,随机生成各种数据,具体请翻阅文档const domain = 'http://mockjs.com/api' // 定义默认域名,随便写const code = 200 // 返回的状态码// 随机生成文章数据const postData = req => {  
  console.log(req) // 请求体,用于获取参数

  let posts = [] // 用于存放文章数据的数组
  
  for (let i = 0; i < 10; i++) {    let post = {      title: Random.csentence(10, 25), // 随机生成长度为10-25的标题
      icon: Random.dataImage('250x250', '文章icon'), // 随机生成大小为250x250的图片链接
      author: Random.cname(), // 随机生成名字
      date: Random.date() + ' ' + Random.time() // 随机生成年月日 + 时间
    }

    posts.push(post)
  }  
  // 返回状态码和文章数据posts
  return {
    code,
    posts
  }
}// 定义请求链接,类型,还有返回数据Mock.mock(`${domain}/posts`, 'get', postData);

main.js

import Mock from './mock' // 刚刚手写的mock.js文件import axios from 'axios' // axios http请求库axios.defaults.baseURL = 'http://mockjs.com/api' // 设置默认请求的urlVue.prototype.$http = axios

组件中

this.$http.get("/posts").then(res => {  console.log(res);
});

data.png

注意
  • get请求有带参数时,请把接口url写为正则匹配,否则匹配不到就报错(Mock.mock('此处为正则')



作者:daydreammoon
链接:https://www.jianshu.com/p/aea89b5e6d33

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/240814.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号