React Context APIを使用している間、データをフェッチできません

Abhishek Konnur

これは私のApp.jsです。コンテキストAPIを使用していますが、子コンポーネント、つまりNeighbourにある{context.country}と{context.job}でデータをフェッチできません。これは私のApp.jsです。コンテキストAPIを使用していますが、子コンポーネント、つまりNeighbourにある{context.country}と{context.job}でデータをフェッチできません。App.js

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

    const MyContext = React.createContext();

    class MyProvider extends Component {
      state = {
        firstName: 'Tom', lastName: 'Holland', age: 24, country: 'America', job: 'Actor',
      }
      render() {
        return (
          <MyContext.Provider value={{
            state: this.state, growOld: () => this.setState({ age: this.state.age + 1 })
          }}>
            {this.props.children}
          </MyContext.Provider>
        );
      }
    }


    class App extends Component {
      render() {
        return (
          <div className="App">
            <MyProvider value={{ state: this.state }}>
              <div>
                <p>I am in App component</p>
                <Family />
                <br />
                <Neighbour />
              </div>
            </MyProvider>
          </div>
        );
      }
    }

    export default App;

Neighbour.js

import React, { Component } from 'react';
const MyContext = React.createContext();

class Neighbour extends Component {
    constructor(props){
        super(props)

    }
    render() {
        return (
            <div>
                <MyContext.Consumer>
                    {context => (
                        <React.Fragment>
                            <p>Country : {context.country}</p>
                            <p>Job : {context.job}</p>
                        </React.Fragment>
                    )}
                </MyContext.Consumer>
            </div>
        );
    }
}

export default Neighbour;
Shubham Khatri

値をオブジェクト{state: this.state}としてコンテキストに提供しているのでcontext.state.country、コンシューマーのよう使用する必要があります。

<MyContext.Consumer>
                {context => (
                    <React.Fragment>
                        <p>Country : {context.state.country}</p>
                        <p>Job : {context.state.job}</p>
                    </React.Fragment>
                )}
            </MyContext.Consumer>

またはあなたは次のようなプロバイダーに価値を提供します

 <MyProvider value={this.state}>
          <div>
            <p>I am in App component</p>
            <Family />
            <br />
            <Neighbour />
          </div>
  </MyProvider>

また、Neighbourコンポーネントで、を持たないコンテキストを再度作成しているProviderため、Consumerの値が未定義になるため、Provider使用したのと同じコンテキストをインポートする必要があります。

Neighbour.jsで

Neighbour.js

import React, { Component } from 'react';
inport { MyContext } from 'path/to/context';

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Context APIを介してReact.Componentクラスのデータをフェッチするにはどうすればよいですか?

分類Dev

Selectors for React context API?

分類Dev

React-context.routerを使用してページをリダイレクトすることはできません

分類Dev

React Context API&HOC

分類Dev

React Native Navigation / Context API

分類Dev

Context API react functional component

分類Dev

React Contextディスパッチをチェーンする方法は?(フック)

分類Dev

React Context API +フック

分類Dev

Context API ReactNativeを使用してデータを取得できません

分類Dev

React Context APIの使い方は?

分類Dev

Reactでフェッチを使用して応答を取得できません

分類Dev

react-nativeでデータをフェッチしているときにエラーが発生します

分類Dev

React NativeのassembleReleaseは、axiosでデータをフェッチできません

分類Dev

ReactのChartJSはデータをフェッチしません

分類Dev

React Context APIを使用して、新しいオブジェクトが作成されたときにコンポーネントを更新します

分類Dev

axiosを使用して、reactでAPI属性を含むAPIからデータをフェッチする

分類Dev

reactを使用してフェッチAPIからのデータを表示する

分類Dev

reduxを使用してreactでデータをフェッチする方法は?

分類Dev

reactでaxiosを使用してデータをフェッチする

分類Dev

promise、context api(reactフック)から未定義のプロパティ「コード」を読み取れません

分類Dev

reactでjavasciptを使用して条件付きのデータをフェッチする方法は?

分類Dev

reactでフェッチボタンを押したときにオブジェクトの配列がフェッチされていません

分類Dev

socket.ioを使用してreactでデータをフェッチする正しい方法

分類Dev

Passing Props in Context [React]

分類Dev

Javascript-非同期フェッチからのReactデータは「useEffect()」と「useState」を使用して定義されていません

分類Dev

React Context APIを使用して、複数のルートにまたがる状態を設定するにはどうすればよいですか?

分類Dev

(React Context初心者)react-rooter-domを使用してページを変更すると、ReactContextが統計になりません

分類Dev

React - New Context API not working with Class.contextType, but works with Context.Consumer

分類Dev

React / Axios:coinmarketcapのキーを使用してAPIデータをフェッチします

Related 関連記事

  1. 1

    Context APIを介してReact.Componentクラスのデータをフェッチするにはどうすればよいですか?

  2. 2

    Selectors for React context API?

  3. 3

    React-context.routerを使用してページをリダイレクトすることはできません

  4. 4

    React Context API&HOC

  5. 5

    React Native Navigation / Context API

  6. 6

    Context API react functional component

  7. 7

    React Contextディスパッチをチェーンする方法は?(フック)

  8. 8

    React Context API +フック

  9. 9

    Context API ReactNativeを使用してデータを取得できません

  10. 10

    React Context APIの使い方は?

  11. 11

    Reactでフェッチを使用して応答を取得できません

  12. 12

    react-nativeでデータをフェッチしているときにエラーが発生します

  13. 13

    React NativeのassembleReleaseは、axiosでデータをフェッチできません

  14. 14

    ReactのChartJSはデータをフェッチしません

  15. 15

    React Context APIを使用して、新しいオブジェクトが作成されたときにコンポーネントを更新します

  16. 16

    axiosを使用して、reactでAPI属性を含むAPIからデータをフェッチする

  17. 17

    reactを使用してフェッチAPIからのデータを表示する

  18. 18

    reduxを使用してreactでデータをフェッチする方法は?

  19. 19

    reactでaxiosを使用してデータをフェッチする

  20. 20

    promise、context api(reactフック)から未定義のプロパティ「コード」を読み取れません

  21. 21

    reactでjavasciptを使用して条件付きのデータをフェッチする方法は?

  22. 22

    reactでフェッチボタンを押したときにオブジェクトの配列がフェッチされていません

  23. 23

    socket.ioを使用してreactでデータをフェッチする正しい方法

  24. 24

    Passing Props in Context [React]

  25. 25

    Javascript-非同期フェッチからのReactデータは「useEffect()」と「useState」を使用して定義されていません

  26. 26

    React Context APIを使用して、複数のルートにまたがる状態を設定するにはどうすればよいですか?

  27. 27

    (React Context初心者)react-rooter-domを使用してページを変更すると、ReactContextが統計になりません

  28. 28

    React - New Context API not working with Class.contextType, but works with Context.Consumer

  29. 29

    React / Axios:coinmarketcapのキーを使用してAPIデータをフェッチします

ホットタグ

アーカイブ