【问题标题】:How to send data from one component to another in nextjs如何在 nextjs 中将数据从一个组件发送到另一个组件
【发布时间】:2019-09-18 19:37:56
【问题描述】:

我在 nextjs 工作。我有标题组件,为了在所有其他页面中显示标题,用 _app.js 覆盖了 app.js。标题有 2 个导航链接 usersList 和 users。 现在我想将数据从标题组件发送到另一个页面,比如 usersList 和用户点击标题中的提交。我们如何实现这一点。 我知道我们可以使用上下文。我正在使用基于类的组件不知道天气我们可以使用上下文。 有没有其他解决这个问题的方法。。 请帮忙

header.js
class HeaderComponent extends Component {
 onSearch(event){
       //some code
    }
    render() {
        return (
            <div className="navbar">

                          <Input id="search-input" className="text-box" placeholder="Enter name or Email.." onKeyDown={($event)=>this.onSearch($event)} prefix={<Icon type="search" onClick={()=>this.onSearch} ></Icon>}></Input>


            </div>
            )
        }
    }
    export default HeaderComponent

布局.js

import React, { Component } from 'react';
import Header from './Header';

class Layout extends Component {
  render () {
    const { children } = this.props
    return (
      <div className='layout'>
        <Header />
        {children}
      </div>
    );
  }
}

_app.js

import React from 'react';
import App from 'next/app';
import Layout from '../components/Layout';

export default class MyApp extends App {
  render () {
    const { Component, pageProps } = this.props
    return (
      <Layout>
        <Component {...pageProps} />
      </Layout>
    )
  }
}

userList.js

class AppUser extends Component {
   render() {
       return (
           <Table
             rowKey={data._id}
             columns={this.columns1}

             onExpand={this.onExpand}
             dataSource={data} 
           />
       )
  }
}

编辑: 可以通过props来实现吗

【问题讨论】:

    标签: reactjs next.js antd


    【解决方案1】:

    您可以使用 ReactRedux 创建一个商店并让所有组件都可以访问它。

    https://redux.js.org/api/store[1]

    【讨论】:

      猜你喜欢
      • 2020-12-06
      • 2021-05-02
      • 2021-08-07
      • 1970-01-01
      • 1970-01-01
      • 2016-04-20
      • 2020-07-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多