react-router的嵌套路由中的“ children”类型是什么?

约翰逊

给定以下代码,“子级”的类型是什么?似乎很可能只是这样,React.Component但我不确定,因此无法仅通过仔细阅读代码就可以弄清这一点。鉴于您可以在Route中使用“组件”,因此我不确定。

此外,React.Component由于编译器错误“错误TS2314:通用类型'Component'需要2个类型参数”,使用just失败,所以也许我可以React.Component<{}, {}>

export class App extends React.Component<{children}, {}> {
    public render() {
        return (
            <div>
                <h1>React Router Tutorial</h1>
                <ul role="nav">
                    <li><Link to="/about">About</Link></li>
                    <li><Link to="/repos">Repos</Link></li>
                </ul>

                {this.props.children}
            </div>
        );
    }
}

ReactDOM.render((
    <Router history={hashHistory}>
        <Route path="/" component={App}>
            <Route path="/repos" component={Repos}/>
            <Route path="/about" component={About}/>
        </Route>
    </Router>
), document.getElementById('app'));

为了澄清起见,我还将以另一种方式提出这个问题:说我想用以下内容替换第一行,我将给出哪种类型children,而不是any

interface {
    children: /* ??? something besides any */ any
}

export class App extends React.Component<AppProps, {}> { /* ... */ }
约翰逊

似乎正确的方法已在DefinitelyTyped 中的react-router.d.ts中进行了演示(具体来说,请注意截至2016年2月20日上午10:08 MST的第83行,该行定义了RouterProps,等效于Props接口众所周知的路由器组件。)

在React类型中,有一个Props接口,其中包含React组件的标准属性children

因此,该代码示例将转换为以下内容。特别注意顶部的界面。

interface AppProps extends React.Props<App> { }

export class App extends React.Component<AppProps, {}> {
    /* ... */
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

React Router V5:在动态路由中需要嵌套路由

来自分类Dev

React Router V5:在动态路由中需要嵌套路由

来自分类Dev

在React Router中的嵌套路由中刷新后看到空白页

来自分类Dev

在 react-router v4 中看到嵌套路由中的空白页

来自分类Dev

React Router:为什么嵌套路由使 React 在同一页面上呈现

来自分类Dev

React Hooks:组件未在嵌套路由中呈现

来自分类Dev

react-router中的嵌套路由

来自分类Dev

React Router,在参数后嵌套路由

来自分类Dev

React Router,在参数后嵌套路由

来自分类Dev

react-router-relay中的嵌套路由

来自分类Dev

在React-Router中找不到嵌套路由的字体

来自分类Dev

react-router v5 –嵌套路由

来自分类Dev

React Router 6 alpha 4嵌套路由

来自分类Dev

React Router Dom嵌套路由,或者如何传递

来自分类Dev

嵌套路由不适用于react-router

来自分类Dev

react-router-relay中的嵌套路由

来自分类Dev

无法使用React Router获得嵌套路由以进行匹配

来自分类Dev

React-Router嵌套路由不起作用

来自分类Dev

React Router-无法渲染嵌套路由

来自分类Dev

React Router v4 - 嵌套路由问题

来自分类Dev

Rails嵌套路由中的资源和名称空间有什么区别

来自分类Dev

react-router-创建没有组件嵌套的嵌套路由

来自分类Dev

React-Router:嵌套路由而不嵌套带有通配符路径的组件

来自分类Dev

React-Router:嵌套路由而不嵌套带有通配符路径的组件

来自分类Dev

如何使用 React Router - ReactJS 添加嵌套和非嵌套路由?

来自分类Dev

如何使用react-router从嵌套路由的根目录重定向?

来自分类Dev

React-Router活动类不适用于嵌套路由

来自分类Dev

无法在React Router v5上打印嵌套路由的子组件

来自分类Dev

react-router:无法在其他视图中显示嵌套路由

Related 相关文章

  1. 1

    React Router V5:在动态路由中需要嵌套路由

  2. 2

    React Router V5:在动态路由中需要嵌套路由

  3. 3

    在React Router中的嵌套路由中刷新后看到空白页

  4. 4

    在 react-router v4 中看到嵌套路由中的空白页

  5. 5

    React Router:为什么嵌套路由使 React 在同一页面上呈现

  6. 6

    React Hooks:组件未在嵌套路由中呈现

  7. 7

    react-router中的嵌套路由

  8. 8

    React Router,在参数后嵌套路由

  9. 9

    React Router,在参数后嵌套路由

  10. 10

    react-router-relay中的嵌套路由

  11. 11

    在React-Router中找不到嵌套路由的字体

  12. 12

    react-router v5 –嵌套路由

  13. 13

    React Router 6 alpha 4嵌套路由

  14. 14

    React Router Dom嵌套路由,或者如何传递

  15. 15

    嵌套路由不适用于react-router

  16. 16

    react-router-relay中的嵌套路由

  17. 17

    无法使用React Router获得嵌套路由以进行匹配

  18. 18

    React-Router嵌套路由不起作用

  19. 19

    React Router-无法渲染嵌套路由

  20. 20

    React Router v4 - 嵌套路由问题

  21. 21

    Rails嵌套路由中的资源和名称空间有什么区别

  22. 22

    react-router-创建没有组件嵌套的嵌套路由

  23. 23

    React-Router:嵌套路由而不嵌套带有通配符路径的组件

  24. 24

    React-Router:嵌套路由而不嵌套带有通配符路径的组件

  25. 25

    如何使用 React Router - ReactJS 添加嵌套和非嵌套路由?

  26. 26

    如何使用react-router从嵌套路由的根目录重定向?

  27. 27

    React-Router活动类不适用于嵌套路由

  28. 28

    无法在React Router v5上打印嵌套路由的子组件

  29. 29

    react-router:无法在其他视图中显示嵌套路由

热门标签

归档