在控制台React Router中收到奇怪的警告

时间:2019-02-15 12:38:10

标签: reactjs

警告:您不应在同一路线中使用<Route render><Route children><Route children>将被忽略

我收到此消息,但是除了我要包装的主要index.js之外,我看不到在同一路径中调用Route Children和Render的任何地方

<BrowserRouter><App/></BrowserRouter>

这是我的REPO https://github.com/mtrew2015/front-end-project-week

如果您能解决这个问题,我将不胜感激!

1 个答案:

答案 0 :(得分:2)

在以下路线

<Route path="/view/:id" render={(props) => (<ViewNote {...props} deleteNote={this.deleteNote} updateNote={this.updateNote} notes={this.state.notes} loggedIn={this.state.isLoggedIn} />)}> </Route>

在打开和关闭JSX标签之间有一个space,它充当children,因此您会得到警告。删除该空间,它将起作用。

不过,要避免此类错误,您可以将自闭标签与不需要孩子的JSX组件一起使用

<Route path="/view/:id" render={(props) => (
        <ViewNote
             {...props} 
             deleteNote={this.deleteNote}
             updateNote={this.updateNote}
             notes={this.state.notes}
             loggedIn={this.state.isLoggedIn}  
        />
)} />

Working demo