zoukankan      html  css  js  c++  java
  • vue-cli 手脚架mock虚拟数据的运用

    现在基本的趋势就是前后分离,前后分离就意味着当后台接口还没完成之前,前端是没有接口可以拿来调用的

        ,那么mock虚拟数据就很好的解决了这一问题,前端可以直接模拟真实的数据AJAX请求!

    运用 步骤:

    1、在项目中安装mockjs、axios

    npm install --save axios mockjs
    

    2、在项目src下面建一个mock.js文件

    3、在mock.js中写入随机数规则,以及引入mock

    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);
    

    4、在入口文件main.js中引入mock.js 和 axios

    // mock模拟数据=========
    import './mock.js'  //引入mock
    import axios from 'axios'
    Vue.prototype.$ajax = axios  //如果不这么写会报错
    axios.defaults.baseURL = 'http://mockjs.com/api' // 设置默认请求的url
    

    5、在运用的页面也要引入axios

    import axios from 'axios'
    

    坑就在这里!!!!费了我一个下午!!!一直报这个错误!!!

    研究了半天终于有效

    在最后调用的地方改一下

    this.$axios.get('/api/data').then((res)=>{
      console.log(res);
    })
    

      改成

    axios.get("/posts").then(res => {
        console.log(res.request.responseText);
    });
    

       OK!!完美

  • 相关阅读:
    C# 创建与读写配置文件
    C# 绘图三种方式
    WindowsForms获取服务名称
    Hbase之JAVA API不能远程访问问题解决
    Jenkins之自动构建
    Jenkins配置匿名用户拥有只读权限
    XShell中文乱码问题解决
    mybatis之关联(2)
    mybatis之动态SQL
    mybatis之一对一关联
  • 原文地址:https://www.cnblogs.com/pwindy/p/12560492.html
Copyright © 2011-2022 走看看