相关疑难解决方法(0)

类型错误:从 react-router 使用 useParams 时,无法读取未定义的属性“匹配”

我不明白为什么它会给我上述错误。我在 props.match.params.languagename 中使用了 props 方式,它工作得很好。

我没有在下面的代码中包含所有导入。


import { useParams } from 'react-router';

const App = () => {
  const topicsState = useSelector(state => state.topics);

  const dispatch = useDispatch();
  const { languagename } = useParams();

  useEffect(() => {
    dispatch(fetchGitHubTrendingTopics());
  }, [dispatch]);

  const handleRepositoryPages = () => {
    const repositoryPages = topicsState.find(
      topicState => topicState.name === languagename
    );
    if (repositoryPages)
      return <RepositoryPage repositoryPages={repositoryPages} />;
  };
  return (
    <>
      <Router>
        <Header topics={topicsState} />
        <Switch>
          <Route path="/" exact>
            <Dashboard topics={topicsState} />
          </Route>
          <Route
            path="/language/:languagename" …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-router

11
推荐指数
2
解决办法
1万
查看次数

在查询参数中的第一个等号后,是否可以出现等号?

例如,这是一个有效的URL:

http://0.0.0.0:8080/auth/reset?id=AAAAAAAAAAA=&code=uX8kklWhVi-Vhp4BdMRQYBEveEdwQXBFDecLlsT6yBw=

从我研究的内容来看,似乎不鼓励(但我没有发现任何确定的东西),但我测试过的所有解码器都正确地解码了它.这包括:

  • 谷歌浏览器
  • 火狐
  • 的NodeJS" decodeURIComponent

url http query-parameters

8
推荐指数
1
解决办法
2823
查看次数

为什么即使参数不是URL编码的某些查询字符串也能工作?

这是一个例子:

https://drive.google.com/viewerng/viewer?embedded=true&url=http://journals.plos.org/plosone/s/file?id=wjVg/PLOSOne_formatting_sample_main_body.pdf

url参数http://journals.plos.org/plosone/s/file?id=wjVg/PLOSOne_formatting_sample_main_body.pdf,不进行编码.它包含保留字符,如冒号,斜杠和问号.

为什么这仍然有效?为什么在没有它的情况下工作呢?

url url-encoding

1
推荐指数
1
解决办法
5269
查看次数