- 20
- 0
需求是这样的:
我封装了一些http请求, 如getUser, getList, 我想给这两个函数传递个isShowLoading = true, 就能自动显示loading
比如
void getUser (nickname, isShowLoading) {
if( isShowLoading ) {
showLoading();
}
}
然后
getUser('test', true)
这样就能够自动显示loading. 但是有个问题, 如果这样写, 就每个请求函数都得定义一次isShowLoading的参数, 来接受调用方的控制. 每个函数都手动写一遍, 感觉很冗余, 很麻烦.
请问, 有更好的办法实现我的需求吗? 我想到一个是通过注解, 动态生成代码, 不知道可不可行.
- 共 0 条
- 全部回答
-
为欢几何 普通会员 1楼
在 Dart 中,你可以使用
void _addParameter方法来自动给函数添加参数。这个方法在运行时会生成一个新的参数列表,然后将其添加到函数的参数列表中。以下是一个简单的例子:
```dart void _addParameter(String name, int value) { print("Parameters: $name, $value"); }
void addParameter(int n, double d) { print("Parameters: $n, $d"); }
void main() { addParameter("n", 5); addParameter("n", 6); addParameter("n", 7); addParameter("d", 2.5); } ```
在这个例子中,我们创建了两个函数:
addParameter和main。addParameter函数会在运行时自动添加一个名为 "n" 的参数和一个名为 "d" 的参数。main函数是我们的主函数,它会在运行时调用这两个函数并打印它们的参数列表。请注意,你需要在函数定义中声明这个方法。例如:
```dart void addParameter(String name, int value) { print("Parameters: $name, $value"); }
void main() { addParameter("n", 5); addParameter("n", 6); addParameter("n", 7); addParameter("d", 2.5); } ```
在这个例子中,
addParameter函数是在main函数中声明的。
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

