【问题标题】:How to pass data from Navigation Component to Home Component in React?如何在 React 中将数据从导航组件传递到主页组件?
【发布时间】:2021-02-22 05:20:37
【问题描述】:

我的 React 应用程序中的组件如下。 -App.js -导航栏组件 -HomeComponent -页脚组件

我想创建一个 Onclick 方法,当用户单击导航栏的按钮时,页面会滑到那个特定的 div。而且当用户滚动到一个 div 时,同名的按钮也会高亮显示。

【问题讨论】:

  • 尝试发布一些您目前尝试过的代码。

标签: html css reactjs navigation


【解决方案1】:

有两种方法可以实现您的要求

  1. 使用 Redux(首选方式)

只需在 redux 中为您的应用维护状态。您可以将当前可见的 div 名称存储在 redux 中,然后从 HomeComponent 订阅此 redux 状态。

  1. App 组件中的本地组件状态

您可以在 App 组件中维护一个本地状态,然后传递该本地状态及其回调函数将该状态更新为 NavbarComponentHomeComponent

让我们以功能组件为例

const [currentVisibleState,setCurrentVisibleState] = useState("");

现在只需将下面的内容传递给 NavbarComponentHomeComponent 两个组件

<NavbarComponent 
  currentVisibleState={currentVisibleState} 
  setCurrentVisibleState={setCurrentVisibleState}
/>

要向下滚动到一个 div,您可以使用 scrollIntoView 函数

【讨论】:

    猜你喜欢
    • 2020-05-25
    • 2020-09-23
    • 2022-06-30
    • 1970-01-01
    • 1970-01-01
    • 2021-12-15
    • 2019-10-18
    • 2018-01-06
    • 2022-07-22
    相关资源
    最近更新 更多