[协程递归问题请教]

2020-11-18 21:43:07 +08:00
 yazinnnn

拿实际业务说 以钉钉接口中的跟部门 id [ 1 ] 为开始,递归出公司详细的组织架构


suspend fun getDepart(){
	fun getSubDepart(pid):List<Department>{
		val subList:List<departId> = dingApi.getSubDepartList(pid)
		return subList.map{
			Department(it,getSubDepart(it))
		}
	}
	return Department(1,getSubDepart(1))
}

data class Department(val departId,val subList:List<Department>) //sublist 是下属部门列表 


业务大概如此描述,同步状态下很简单,请问协程要怎么实现呢?

我用 withcontext ()包裹追钉钉 api,结果 build 时无法通过,报 call to 'resume' before 'invoke' with coroutine

请问有大佬能帮助一下吗?

2585 次点击
所在节点    Kotlin
1 条回复
hongch
2020-11-19 09:45:13 +08:00
exception 贴全一点。。。 还少了几个关键词吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/726873

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX