react ts项目 在React.Component中如何获取url中的参数

layout.tsx

import React from 'react';
import {  Route, Link, HashRouter as Router } from 'react-router-dom'
import About from 'views/about/about'
import Fun from 'views/fun/fun'

class Layout extends React.Component {
    render() {
        return (
            <div className="layout">
                <Router>
                    <Link to="/">index</Link>
                    <Link to="/about?name=about">about</Link>
                    <Link to="/fun?name=fun">fun</Link>

                    <Route path="/about">
                        <About>about</About>
                    </Route>
                    <Route path="/fun" component={Fun}></Route>
                </Router>
            </div>
        );
    }
}
export default Layout;

about.tsx


import React from 'react';
import { useLocation } from "react-router-dom";

function UseQuery() {
  return new URLSearchParams(useLocation().search);
}

class About extends React.Component {
    render() {
        let query = UseQuery(); // 报错的代码
        console.log('query', query.get("name"))
        return (
            <div className="infor-popverdd">
                <div>
                {JSON.stringify(this.props)}
                </div>
            </div>
        );
    }
}
export default About;

运行时报错
localhost_3000_.png
image.png

阅读 2.8k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题