liangjingkanji / Net

Android 基于协程/OkHttp网络请求工具
http://liangjingkanji.github.io/Net/
MIT License
1.91k stars 214 forks source link

东哥请问一下,为何scopeDialog { } 不支持预览模式,是不是我使用姿势不对 #149

Closed zkzk7749 closed 1 year ago

zkzk7749 commented 1 year ago

scopeDialog { } .preview { } 第一个大括号里边的不走,

如果作用域换成scopeNetLife{}.preview { } 才正常,我不知道问题错哪里了

liangjingkanji commented 1 year ago

算你写错了

zkzk7749 commented 1 year ago

我的确是使用scopeNetLife{}.preview { } 这个请求网络,和绑定数据都很很正常。

但是使用scopeDialog { } .preview { } ,网络是有请求的,但是网络请求完毕以后,绑定数据就不执行了

liangjingkanji commented 1 year ago

请使用日志或者断点调试, 如果还有问题请fork仓库复现问题, 我再次重申不要让猜测浪费维护项目的时间

项目是开源项目可以断点调试或者查看示例代码, 花费大量精力的demo和文档不是白写的

liangjingkanji commented 1 year ago

没有说不存在错误, 但是错误可能不是你描述的位置, 我不希望和你在这里远程对练空想瞎猜

你发现任何问题请优先考虑demo是否也存在此问题, 第一时间请排除自己的问题而不是觉得是框架有问题 每次都是提问者说有问题, 我复现没问题折腾一天告诉我自己其他代码写错了, 我给issues设置的模板你看都不看直接删除

开源项目不是靠某个人来支持所有人, 这样让我太疲累影响项目的需求/bug计划

zkzk7749 commented 1 year ago

恩恩恩,明白东哥苦心

zkzk7749 commented 1 year ago

极大可能是我的使用方法不对,我太菜

zkzk7749 commented 1 year ago

版本就是最新的 implementation 'com.github.liangjingkanji:Net:3.5.2'

zkzk7749 commented 1 year ago

问题描述

scopeDialog的预览没有达到我的预期。但是scopeNetLife 可以

期望行为

希望scopeDialog预览以后还可以走

如何复现

已经上了代码,100%复现

在fragment中使用的。 scopeNetLife { val data = Get("https://wwww.baidu.com").await() binding.textHome.text = data homeViewModel.str.value = data }.preview { Log.i("aaaaaaaaaaaaaa", "预览000") homeViewModel.str.value?.let { Log.i("aaaaaaaaaaaaaa", "预览1111") binding.textHome.text = it this.cancel() } }

逻辑就是如果viewmodel有数据,就取viewmodel中的,然后停止请求网络,如果viewmodel是空,那么请求网络。 以上代码使用正常,可以达到我的目的。

但是把scopeNetLife 换成scopeDialog就不行了,网络请求可以发送请求,但是无法收到响应, binding.textHome.text = data homeViewModel.str.value = data 这两句话就无法执行了

zkzk7749 commented 1 year ago

来彩图 1669995288959

zkzk7749 commented 1 year ago

我怀疑是我哪里没写好,让okhttp不执行了,这个是使用scopeDialog的日志 1669997202293