您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

React Hooks-发出Ajax请求

React Hooks-发出Ajax请求

您可以创建一个自定义钩子useFetch,该useEffect钩子将实现该钩子。

通过将空数组作为第二个参数传递给useEffect钩子,将触发上的请求componentDidMount

这是代码沙箱中的演示

请参见下面的代码

import React, { useState, useEffect } from 'react';

const useFetch = (url) => {
  const [data, setData] = useState(null);

  // empty array as second argument equivalent to componentDidMount
  useEffect(() => {
    async function fetchData() {
      const response = await fetch(url);
      const json = await response.json();
      setData(json);
    }
    fetchData();
  }, [url]);

  return data;
};

const App = () => {
    const URL = 'http://www.example.json';
    const result = useFetch(URL);

    return (
      <div>
        {JSON.stringify(result)}
      </div>
    );
}
其他 2022/1/1 18:16:11 有298人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶