javascript - 重定向似乎不可靠

标签 javascript reactjs react-router

我试图在用户点击文章时将用户重定向到他们点击的文章。有时它似乎工作,有时它似乎什么都不做。

const searchResult = props => {
    const [url, setUrl] = useState('');

    const listItemClicked = url => {
        setUrl(url);
    };

    if (url !== '') {
        console.log(url);
        return <Redirect to={url} />;
    }

    return (
        <li key={props.resultName} className="result-list" onClick={() => listItemClicked(props.url)}>
            <div className="result">
                <p>{props.resultName[0].toUpperCase() + props.resultName.slice(1)}</p>
            </div>
        </li>
    );
};

export default searchResult;

console.log(url);虽然每次都显示 url,但要记住一些事情,因此为什么我说重定向似乎不是很可靠/如果我已经在 /help 并且我还需要用例重定向到 /help 会不会导致任何问题,我不这么认为,但也只是将其添加到那里。

关于我如何以不同方式解决这个问题或我可以做些什么来使它更可靠,有什么建议吗?如果您将其投入生产,您会怎么做?提前致谢!

更新 - 当我在/help 上并重定向到/help 时,它似乎给了我错误

最佳答案

尝试

import { Link } from 'react-router-dom'

return <Link to={url} />;

关于javascript - 重定向似乎不可靠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55730635/

相关文章:

reactjs - 当调度某个 Redux 操作时,如何将用户重定向到某个路由?

javascript - 默认路由总是在 react 路由器中执行

javascript - 如何为除法垂直和绝对水平固定位置

reactjs - 组件上缺少 TypeScript ReactDOM 属性 'type'

javascript - 无法使用 Link 组件传递状态。为什么状态未定义?

javascript - 使用 React Router 的分层路由

javascript - 这个javascript语句会影响性能吗?

JavaScript:从服务器获取更新?

reactjs - 协程作为对 useEffect 的依赖

javascript - 如何将事件处理程序传递给 React 中的子组件