获取状态对象的子对象

时间:2020-05-02 10:38:45

标签: reactjs

在我的react-app中,我从服务器获取数据并将其存储在data中,如下所示:

  React.useEffect(() => {
    const fetchWidgets = async () => {
      const response = await fetch("http://localhost:1202/data");
      const responseData = await response.json();
      setData(responseData);
    };
    fetchWidgets();
  }, []);

生成的对象看起来像这样:

data = {
    "Widget1": "notes",
    "Widget2": "weather",
    "Widget3": "clock",
    "Widget4": "news"
  }

如果我想获取Widget1的值,该怎么做? 如果我尝试data.Widget1会收到以下错误消息:Property 'Widget1' does not exist on type 'object'.

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

您需要输入useState返回值的类型

interface DataType {
    [key: string]: string
}

const [data, setState] = useState<DataType>({})