我该如何解决打字稿中的这个问题:类型'unknown'不能分配给类型'(prevState:string | undefined)?

时间:2020-11-06 07:29:50

标签: javascript reactjs typescript

我正在通过fetch函数将imageimg转换为base64,并且如果我给state输入type都是可行的,但是当我尝试给出字符串时却出现了错误。 values.fileUrl它是图像的链接

这是我的代码

const [userImage, setUserImage] = useState<string>();

export const toDataURL = (url: string) => fetch(url)
  .then(response => response.blob())
  .then(blob => new Promise((resolve, reject) => {
    const reader = new FileReader()
    reader.onloadend = () => resolve(reader.result)
    reader.onerror = reject
    reader.readAsDataURL(blob)
  }))


  useEffect(() => {
    toDataURL(values.fileUrl)
      .then(dataUrl => {
        const data = dataUrl;
        setUserImage(data);
        // HERE ERROR FOR DATA 
            Argument of type 'unknown' is not assignable to parameter of type 'SetStateAction<string | 
            undefined>'.
            Type 'unknown' is not assignable to type '(prevState: string | undefined) => string | 
            undefined'.ts(2345) 
      })
  }, [values.fileUrl]);

0 个答案:

没有答案