美文网首页
2019-04-24 js基础的一些逻辑

2019-04-24 js基础的一些逻辑

作者: gdchent | 来源:发表于2019-04-24 18:39 被阅读0次

    参见地址:
    https://github.com/zuiidea/antd-admin 这个是基于umi的 ,这个umi号称开箱即用,官方文档地址: https://umijs.org/zh/guide/#%E7%89%B9%E6%80%A7
    首先我们看到这个文件 地址如下:
    https://github.com/zuiidea/antd-admin/blob/master/.umirc.js

    里面有一段关键的代码如下:

      alias: {
        api: resolve(__dirname, './src/services/'),
        components: resolve(__dirname, './src/components'),
        config: resolve(__dirname, './src/utils/config'),
        models: resolve(__dirname, './src/models'),
        routes: resolve(__dirname, './src/routes'),
        services: resolve(__dirname, './src/services'),
        themes: resolve(__dirname, './src/themes'),
        utils: resolve(__dirname, './src/utils'),
      }
    

    然后走进./src/services/文件 发现首先拿着api地址做了遍历
    先看下api文件代码:

    export default {
      queryRouteList: '/routes',
      queryUserInfo: '/user',
      logoutUser: '/user/logout',
      loginUser: 'POST /login',
    
      queryUser: '/user/:id',
      queryUserList: '/users',
      updateUser: 'Patch /user/:id',
      createUser: 'POST /user',
      removeUser: 'DELETE /user/:id',
      removeUserList: 'POST /users/delete',
    
      queryPostList: '/posts',
    
      queryDashboard: '/dashboard',
    }
    

    示例代码如下:

    const APIFunction = {}
    //api对象遍历 
    for (const key in api) {
      APIFunction[key] = gen(api[key])
    }
    

    其实以上代码就相当于:
    {
    '/routes':gen('/routes'),
    'xxx':gen('xxx')
    }
    为什么要写这个????
    因为这个项目里面包含了dva在model里面
    const data = yield call(loginUser, payload) //这个loginUser是个方法 ,刚开始的时候,我也纳闷 ,就是因为之前做了上面那些操作

    相关文章

      网友评论

          本文标题:2019-04-24 js基础的一些逻辑

          本文链接:https://www.haomeiwen.com/subject/nslngqtx.html