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);
    }
  }, []);
相关推荐
Shi_haoliu2 分钟前
inno setup6.6.1实例,制作安装包,创建共享文件夹,写入注册表(提供给excel加载项,此文章解释iss文件)
前端·vue.js·windows·excel
MediaTea3 分钟前
Python:实例 __dict__ 详解
java·linux·前端·数据库·python
狗头大军之江苏分军11 分钟前
又是一个周末加班夜,前端的我只想哭…
前端
个案命题21 分钟前
鸿蒙ArkUI组件通信专家:@Param装饰器的奇幻漂流
java·服务器·前端
Data_agent21 分钟前
CNFANS模式淘宝1688代购系统搭建指南
大数据·开发语言·前端·javascript
美酒没故事°27 分钟前
vue3+element 滚动触底加载选择器
javascript·vue.js·ecmascript
澄江静如练_36 分钟前
表单输入绑定
服务器·前端·javascript
猩球中的木子38 分钟前
vue-plugin-hiprint打印高度不够,提示:没有足够空间,显示下方内容,问题处理方案及实操
前端·vue.js
狗头大军之江苏分军1 小时前
Node.js 原生功能越来越强,我们是不是被 npm 玩坏了?
前端·javascript·架构
独自破碎E1 小时前
TS7016: Could not find a declaration file for module ‘vue-router‘.解决办法
前端·javascript·vue.js