zoukankan      html  css  js  c++  java
  • Mock(模拟后端接口数据)配合Vuex的使用

    1.下载Mock  cnpm install Mockjs -S

    2.新建一个data.js存放新生成的mock文件

    编辑mock  并导出

    const Mock = require('mockjs');
    let data = Mock.mock({
        "data|10":[{
            "date":'@date(yyyy-MM-dd)',
            "name":'@cname()',
            "adress":'@county(true)',
            "image":"@image( '200x100', '#ffcc33', 'skybule', 'gif', 'text' )"
        }]
    })
     // console.log(data)
    function pageGoods(){
        return data.data
    }
    export default {
        pageGoods
    }

    3.新建一个mock.js接收data.js中的 数据

    import Mock from "mockjs"
    import a from "../../../server/data.js"
    
    Mock.mock(//goodslist/,"get",a.pageGoods)
    //请求的路径  请求的方式  回调函数

    同时在apis中定义请求的路径供 Mock.mock中的路径使用 

    import http from "../utils/http";
    export const goodslist = ()=>http("get","/goodslist")

    4.然后在state中的action中 引入goodlist  并触发函数

    import {goodslist} from "../../apis/good.js"
    
    export default{
        async handleData({commit}){
             let data = await goodslist();
             commit("handleData",data);
         console.log(data)
        }
    }

    页面中 method中action映射,created()中触发函数

    methods:{
            ...Vuex.mapActions({
                handleData:"loginPassword/handleData"
            })
        }

    created()
    {
    this.
    handleData()
    }

    state中的mutation中传递

     handleData(state,data){
            state.goods = data;
        }

    state中映射数据

    export default{
        goods:[]
    }

    5.页面中computed渲染

    computed:{
             ...Vuex.mapState({
              goods:state=>state.loginPassword.goods
            })
        }

    最后循环出结果

    <div class="foot" v-for="(item,index) in goods">{{item.name}}</div>
  • 相关阅读:
    final、static关键字
    this关键字与super关键字区别
    JAVA常见报错
    Java抽象类和多态
    Java 类和接口的继承
    JAVA封装
    库存管理案例
    Map的遍历
    LinkedList vector集合,Set接口
    Collection,迭代器iterator,list接口
  • 原文地址:https://www.cnblogs.com/Mir-bink/p/10534156.html
Copyright © 2011-2022 走看看