请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于 setError 类型 - setError(message) 不报错的原因

一下代码的 catch 中 setError 为什么没有报错?

message 是字符串类型呀但 setError 接口的不是 null 或 Error 为什么没报错

  const [error, setError] = useState<null|Error>(null); 
  useEffect(() => {
    console.log("useEffect(...,[debounceValue])");
    setIsLoading(true)
    client("projects", {
      data: cleanObject(debounceValue),
    })
    .then(setList)
    .catch(({status,message})=>{
      setList([])
      setError(message) // message 是字符串但 setError 接口的不是 null 或 Error 为什么没报错
    })
    .finally(()=>{
      setIsLoading(false)
    })
  }, [debounceValue]); // param 发生变化时执行

正在回答 回答被采纳积分+3

1回答

Nolan 2021-07-09 00:57:58

看了很多遍终于看懂你要表达什么意思


编辑器里的ts一定会报错的吧,页面运行不会报错是正常的,ts是在静态阶段执行

0 回复 有任何疑惑可以回复我~
  • 提问者 qq_小江南_04298178 #1
    纳闷的原因就是我的编辑器里并没有报错,我现在知道没有报错的原因了,因为鼠标放到 setError(message) 时我这里提示 message 是 any 类型
    回复 有任何疑惑可以回复我~ 2021-07-12 08:45:03
  • qzxqqa 回复 提问者 qq_小江南_04298178 #2
    你好,请问解决了吗
    回复 有任何疑惑可以回复我~ 2021-07-26 22:22:25
  • 提问者 qq_小江南_04298178 回复 qzxqqa #3
    ,鼠标放到 setError(message) 时提示 message 是 any 类型
    回复 有任何疑惑可以回复我~ 2021-07-27 08:41:31

相似问题

登录后可查看更多问答,登录/注册

问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信