簡體   English   中英

反應鈎子和打字稿-類型'從不'屬性'***'不存在

[英]react hooks and typescript - Property '***' does not exist on type 'never'

我從很多角度遇到了這個問題,目前我的代碼看起來像這樣,並且出現以下錯誤:

屬性“相冊”在“從不”類型上不存在

我正在使用React掛鈎,但是從使用useState更新的data對象中獲取錯誤。 data具有屬性albums ,我不確定該如何定義或在何處進行。

import React, { useState } from 'react';

interface ArtistProps {
   artistName: string,
}


const Artist: React.SFC< ArtistProps > = ({ artistName }) => {

    const [data, setData] = useState(null);

    return (
        <>
            <p>{artistName)}</p> // this is fine
            <p>{data.albums}</p> // error here
        </>
    );
}

嘗試這個:

const [data, setData] = useState<null | {albums: any}>(null);

然后像這樣使用data變量

data!.albums 

! 是讓Typescript知道您確定該值不為null 但是更好的方法是顯式檢查該值是否為null例如data ? data.albums : 'no data' data ? data.albums : 'no data'

PS代替{albums: any}添加您適當的表面。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM