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);
    }
  }, []);
相关推荐
万物得其道者成13 分钟前
前端大整数精度丢失:一次踩坑后的实战解决方案(`json-bigint`)
前端·json
鹏北海44 分钟前
移动端 H5 响应式字体适配方案完全指南
前端
姜太公钓鲸2332 小时前
ROM就是程序存储器,实际的存储介质是Flash闪存。上述描述中的程序存储器是什么意思?
开发语言·javascript·ecmascript
柳杉2 小时前
使用AI从零打造炫酷医疗数据可视化大屏,源码免费拿!
前端·javascript·数据可视化
凌云拓界3 小时前
前端开发的“平衡木”:在取舍之间找到最优解
前端·性能优化·架构·前端框架·代码规范·设计规范
zhengfei6113 小时前
【XSS payload 】一个经典的XSS payload
前端·xss
简单Janeee3 小时前
[Vue 3 从零到上线]-第四篇:组件化思维——把网页像积木一样拆解
javascript·vue.js·ecmascript
全栈老石4 小时前
手写一个无限画布 #1:坐标系的谎言
前端·canvas
XW01059994 小时前
4-11判断素数
前端·python·算法·素数
J2虾虾5 小时前
Spring Boot中使用@Scheduled做定时任务
java·前端·spring boot