を更新することができ、私はルータに反応使っているアプリを持っています。このアプリには常に更新されるいくつかのコンポーネントがあります(ライブアナリティクスデータのダッシュボードです)。Reacrルータ - SETSTATE(...):専用でマウントや実装部品
warning.js:36警告:SETSTATE(...):専用でマウントまたは 実装部品を更新することができ、ダッシュボードのさまざまなセクションの周りにリンクする
<Link>
を使用したとき、私は次のようなエラーに実行していますよ。これは、通常、アンマウントされたコンポーネント でsetState()を呼び出したことを意味します。これはノーオペレーションです。 ログインコンポーネントのコードを確認してください。ここで
私のコードです:
App.js:
<BrowserRouter>
<Main />
</BrowserRouter>
Main.js:
<Sidenav />
<Switch>
<Route exact path='/site-feedback' component={Sitefeedback}/>
<Route exact path='/logins' component={Logins}/>
<Route exact path='/shop-sales' component={Shopsales}/>
</Switch>
Sidenav.js:
<Link to='/site-feedback'>Site Feedback</Link>
<Link to="/logins">Logins</Link>
<Link to="/shop-sales">Shop Sales</Link>
私はタグ普通で<links>
を交換した場合、問題が再びアプリ全体の負荷と消えるが、私は理想的に例えばヘッダやsidenavのような私がそこに持っている他のコンポーネントを再ロードする必要はありませんしたいと思います。
誰もがこのために良い回避策を知っていますか?あなたのコンポーネントの一つが間隔を設定したり、外部イベントをサブスクライブすることを私は
警告は自己説明です:_。.. **ログイン用のコードを確認してください。** component._ – hindmost
あなたがログインに何を実行していません成分? –
あなたは、<ルート正確なパス= '/ログイン' コンポーネント= {ログイン} /> 'と' <ルート正確なパス= '/ショップ販売' コンポーネント= {Shopsales} /> ''書くことを意味していましたか? –