callback不生效
时间: 2023-09-24 13:04:46 浏览: 49
引用\[1\]:在使用sdk内部的useCallback函数时,如果依赖项不变,闭包内的state会保持上一次执行callback时的值。为了解决这个问题,可以让sdk开发人员增加useCallback的依赖项,并使用useRef来存放会发生变化的值。\[1\]
引用\[2\]:根据你提供的信息,你在参考网红视频写代码时遇到了JS跨域问题。你复制了视频中的代码,但是无法解决跨域问题,callback的方法名无法在json的头部增加。你提到debug日志显示已经取到后台数据并且返回时已经调用了配置好的CallbackMappingJackson2HttpMessageConverter类,但是debug不进入重写的writeInternal方法中的断点。\[2\]
引用\[3\]:你使用了其他部门提供的sdk进行开发,并向他们的组件中注册了一个回调函数。但是当触发回调函数时,内部的state一直保持初始值,而当前组件的state却保持更新。你使用了hooks声明了页码和页数的状态state,并根据获取到的题目数据设置了页数和当前页码。但是在回调函数中取值时,页码和页数一直为0。\[3\]
根据你的问题描述,可能有以下几个原因导致callback不生效:
1. 在使用callback时,没有正确设置依赖项,导致闭包内的state保持上一次执行callback时的值。
2. 在处理跨域问题时,可能需要进一步检查代码中是否有其他地方导致跨域问题无法解决。
3. 在注册回调函数时,可能存在其他问题导致内部state无法正确更新。
建议你检查以上可能的原因,并根据具体情况进行调试和排查。如果有需要,可以提供更多的代码和错误信息以便更好地帮助你解决问题。
#### 引用[.reference_title]
- *1* *3* [useCallback 导致回调函数state状态不更新的问题](https://blog.csdn.net/sinat_36521655/article/details/113899086)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [Jsonp跨域问题-callback无法生效](https://blog.csdn.net/NoPainsNoGainsCSDN/article/details/88715739)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]