dart 自动给函数添加参数

需求是这样的:

我封装了一些http请求, 如getUser, getList, 我想给这两个函数传递个isShowLoading = true, 就能自动显示loading

比如

void getUser (nickname, isShowLoading) {
    if( isShowLoading ) {
        showLoading();
    } 
}

然后

getUser('test', true)

这样就能够自动显示loading. 但是有个问题, 如果这样写, 就每个请求函数都得定义一次isShowLoading的参数, 来接受调用方的控制. 每个函数都手动写一遍, 感觉很冗余, 很麻烦.

请问, 有更好的办法实现我的需求吗? 我想到一个是通过注解, 动态生成代码, 不知道可不可行.

阅读 2k
1 个回答
// 可以用命名参数
void getUser ({
    String nickname,
    bool isShowLoading = true,
}) {
    if( isShowLoading ) {
        showLoading();
    } 
}

// 调用
getUser(nickname: 'gauseen')
// OR
getUser(nickname: 'gauseen', isShowLoading: false)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题