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);
    }
  }, []);
相关推荐
还是鼠鼠3 分钟前
使用 Axios 获取用户数据并渲染——个人信息设置
前端·javascript·vscode·ajax·前端框架·bootstrap·html5
洗发水很好用5 分钟前
vue.js中动态路由addRoutes失效
前端·javascript·vue.js
16年上任的CTO10 分钟前
vue组件和插件的区别与联系
前端·javascript·vue.js
小Mie不吃饭12 分钟前
2025新时代 | 分析并解决企业跨域问题
前端·后端·springboot·api·web·跨域
NF禾凡26 分钟前
web 第二次作业
前端·vscode
@PHARAOH40 分钟前
HOW - 个人创业(准备篇)
前端·创业
leo_hush1 小时前
java解析复杂json
java·前端·json
太阳与星辰1 小时前
02vue3实战-----项目目录详解
前端·typescript·后台管理·vue3实战
Byron07072 小时前
Vue3-管理状态 effectScope
前端·javascript·vue.js·前端框架
苏-言3 小时前
Spring Boot Web项目全解析:从前端请求到后端处理
前端·spring boot·后端