Typescript【网址取ID传入后端API】

网址取ID传入后端API

实现部分

<a href={zyjs?id=5} key={5} className="o_on">动漫建模

typescript(前端)

第一部分:获取查询字符串

如果URL是https://**/zyjs?id=5,那么window.location.search的值就是"?id=5"

第二部分:根据第三部分处理到的id,传入后端API

第三部分:处理自己需要的params数据

typescript 复制代码
  const [classname,setclassname] = useState([]);
  const [image_data, setimage_data] = useState([]);
//**第一部分**
  function getQueryParam(name: string): string| null {
    const search: string = window.location.search;
    const params: URLSearchParams = new URLSearchParams(search);
    return params.get(name);
  }
//**第二部分:**
  async function fetchArtImages(params: { id: string }) {
    try {
      const response = await class_img(params);
      const artImages = response.data;
      console.log('params', params);
      console.log("artImages",artImages);
      if(artImages){
        setimage_data(artImages.imgs);
        setclassname(artImages);
        console.log("classname",classname)
      }
    } catch (error) {
      console.error('Error fetching art images:', error);
    }
  }
//**第三部分**
  useEffect(() => {
    const paramValue = getQueryParam('id');
    if (paramValue) {
      const params = { id: paramValue };
      fetchArtImages(params);
    }
  }, []);
相关推荐
几何心凉11 小时前
openGauss:多核时代企业级数据库的性能与高可用新标杆
前端·数据库·数据库开发
AiXed13 小时前
PC微信协议之AES-192-GCM算法
前端·数据库·python
AllData公司负责人14 小时前
实时开发平台(Streampark)--Flink SQL功能演示
大数据·前端·架构·flink·开源
小满zs14 小时前
Next.js第五章(动态路由)
前端
清沫14 小时前
VSCode debugger 调试指南
前端·javascript·visual studio code
一颗宁檬不酸15 小时前
页面布局练习
前端·html·页面布局
zhenryx15 小时前
React Native 自定义 ScrollView 滚动条:开箱即用的 IndicatorScrollView(附源码示例)
javascript·react native·react.js·typescript
金木讲编程16 小时前
Claude、Agent与Copilot协作生成Angular应用
前端·ai编程
振华OPPO16 小时前
Vue:“onMounted“ is defined but never used no-unused-vars
前端·javascript·css·vue.js·前端框架
欧雷殿17 小时前
在富阳银湖成立地域化的软件研发团队
前端·程序员·创业