CMSからのコンテンツを表示するためにReactコンポーネントを設定しました。ここではdangerouslySetInnerHTML
を使用しています。私は標準のフェッチ、要求、非同期アクションを処理するためにサンクで設定されたパターンを受信している。React dangerSetInnerHTMLエラーでReduxで約束を拒否する
アクションの作成者は、次のようになります。私が最初に反応させ、コンポーネントを作成し
export const fetchPage = (slug) => {
return (dispatch) => {
dispatch(requestPage());
return fetch(`${config.api}/pages/?slug=${slug}`)
.then((response) => {
const status = response.status;
switch (status) {
case 200:
return response.json();
case 401:
return Promise.reject(status);
default:
return Promise.reject(status);
}
})
.then(json =>
dispatch(receivePage({
slug,
json,
}))
).catch(err =>
dispatch(receivePageError(err)));
};
};
は、私はフォーマット{ __html: content }
でdangerouslySetInnerHTML
オブジェクトに渡すのを忘れて、ちょうど私の不変違反を与え、それcontent
を可決しました。私が混乱しているのは、このエラーがreduxの非同期フローに吹き込み、receivePageErrorのディスパッチを引き起こしたということです。 Reactコンポーネント自体ではなく、なぜこのエラーが表示されましたか?
こんにちはマットを約束するためにこれは素晴らしいリソースです、疑問に示すように、元のポスターは、すでに何を知っていました約束事は拒絶が約束するものである。実際の解決策を提示することなく、質問に答えないようにしてください。 – Conan
元のポスターは「Reactコンポーネント自体ではなく、なぜこのエラーがここに表示されたのですか?これが答えます。この質問に「実際の解決策」が伴うのは何ですか? – Matt
Ahh "redux非同期フロー"ビットごめんなさい – Matt