使用协程时出现暂停功能错误

时间:2020-11-03 10:10:17

标签: android kotlin-coroutines suspend

另外,我在协程范围内调用了suspend函数,但收到一个错误,指出只能在协程体内调用Suspends函数。怎么回事?


  lifecycleScope.launchWhenCreated{
                viewModel.tickets.observe(viewLifecycleOwner,  {
                    it?.let { data ->
                        adapter.submitData(data)
                    }
                })
        }

1 个答案:

答案 0 :(得分:1)

嗨,您正在内部调用lambda调用暂停函数。

像这样更改顺序:

   viewModel.tickets.observe(viewLifecycleOwner,  { data ->
           lifecycleScope.launchWhenCreated{
                data?.let { list ->
                    adapter.submitData(list)
                }
            })
    }