在 Navbar 中嵌入 React 组件的错误做法?

Bad practice to embed a React component in Navbar?

Navbar 组件中嵌入 Results 页面组件是否是一种不好的做法,因为它有搜索栏,我可以将输入值作为道具传递给 Results JSX 中的组件?但这是我在导航栏中包含一个主要组件时的好做法吗?目前,我正在使用路由器、useNavigationuseParams 方法来检测变化,但它引入了不必要的复杂性。

可以将道具从 parent 传递到 child 组件。

如果您认为这不是好的做法,请使用 Context API

或者使用全局状态管理库,例如 redux

但是对于简单的应用我建议传递道具 从 Parent 到 child.

    <AppContainer>
        <SearchBar value={searchString} updateSearch={...} />
        <Results searchString={searchString}/>
    </AppContainer>

也许有一个父组件维护状态,然后将操纵的搜索作为 prop 传递给它的子组件。