javascript - es6 generator 的问题
天蓬老师
天蓬老师 2017-04-11 11:50:30
[JavaScript讨论组]
* login({ userName: name, password: pwd }, { call, put }) {
      yield put({ type: 'loading', showtext: '登录中...', inputEditable: false });
      const data = yield call(loginService.login, name, pwd);
      if (data) {
        console.log(`登录用户信息:${loginUserData}`);
      } else {
        Toast.fail('登录失败', 1);
      }
}

用的是dva的结构,命名空间是login,在页面调用直接就是

dispatch({ type: 'login/login', u, p });

有几个地方不明白,
首先方法的参数,{ userName: name, password: pwd }是什么意思?
第二{ call, put }这个参数从哪里来的?调用的时候没传过来呀?
当执行到yield的时候函数不是会暂停么?后边的语句会自动执行么?
对于ES6 这块不太了解,求大手给解答一下,或者推荐点资料!!

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(1)
迷茫

第一个问题是解构赋值的问题,而不是参数默认值
当你传入{userName:'you',password:'word'}时,函数内部的name='you',pwd='word'
第二个问题,没研究过dva,不懂,但是找到了一个es6配合dva的教程。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号