• Login事件的调取过程(四)


    1、解读Login

       login(){
          // 对当前loginForm进行验证,验证属性
           this.$refs.loginForm.validate(valid => {
            if (valid) {
              this.loading = true
              //调用store下的login方法
              this.$store.dispatch('Login', this.loginForm).then(() => {
                this.loading = false
                this.$router.push({ path: '/' })
              }).catch(() => {
                this.loading = false
              })
            } else {
              // console.log('error submit!!')
              return false
            }
          })
        },
     
    2、查找store中的login  在store>modules>user.js 找到
      actions: {
        Login({ commit }, userInfo) {
       // 1的方法跳转到了这里
     
    3、store>modules>user.js   引入了外部方法
    import { login, logout, getInfo } from '@/api/user'
     
    const actions = {
      // user login
      login({ commit }, userInfo) {  
      const { username, password } = userInfo
        // 异步调用
        return new Promise((resolve, reject) => {
          // 这里调用的是 api/users/login方法
          login({
            username,
            password
          })
     
    在store>modeules>user.js中的Login又调用了api/user
     
    4、api>user.js  这里是实际的接口调用方法, 
    export function login(username, password)
    {
     return request({
        // 页面登陆方法
        // data是传入参数,返回什么数据
        url: '/login', //实际调用的webapi接口方法
        method: 'get',
        params
      })
     
    5、从页面端,到处理端,再到实际调用端,走了三层
    目的应该是为了对页面复杂度进行简化,复用,包裹、归类
    1的页面级,不放置接口相关的方法;
    2的逻辑级加了异步调用,对返回数据的处理和逻辑判断;
    3的接口调用 api>下放整个项目的接口部分
     
     
    6、在底层接口调用的过程中,参数左右出现了7B%这类码
    应该是在编译的时候产生的问题,原因未查明,解决方法是引入qs.js
    并添加转换过程
     var params = qs.parse(username, password)
  • 相关阅读:
    与你一起学习MS Project基础篇:Project基础应用
    【项目管理工具】Microsoft Office Project 介绍
    学习Microsoft Visio(3)
    学习Microsoft Visio(2)
    学习Microsoft Visio(1)
    为什么管理人员都喜欢用Visio画图
    用Visio画流程图
    使用VISIO绘制组织结构图的操作方法
    C#(99):HttpClient网络HTTP请求和相应
    中国的名优绿茶
  • 原文地址:https://www.cnblogs.com/ZhangYaBin/p/12751041.html
Copyright © 2020-2023  润新知