1

Redux アプリを次のようにレンダリングしています -

<Provider store={store}>
    <MyComponent />
</Provider>

コンパイルされたコードは

ReactDOM.render(React.createElement(
    _reactRedux.Provider,
    { store: store },
    React.createElement(MyComponent, null)
), document.getElementById(element_id));

これにより、エラーがスローされますUncaught Error: Invariant Violation: onlyChild must be passed a children with exactly one child.。React の開発バージョンでは、次の警告もスローされます。Warning: Failed propType: Invalid prop 'children' supplied to 'Provider', expected a single ReactElement.

単純に変更すると

<div>"Content"</div>

コンパイルされたコードは次のようになります

ReactDOM.render(React.createElement(
    'div',
    null,
    '"Content"'
), document.getElementById(element_id));

そしてそれは適切にレンダリングされます。

プロバイダー バージョンは、デスクトップ クロームとデバイスのクローム ブラウザーで正常に読み込まれます。

ポインタはありますか?

4

1 に答える 1

0

バベルポリフィルで何かをしなければなりません。ビルド プロセスからポリフィルを削除し、タグを使用して polyfill.io のような CDN を使用する場合

<script src="https://cdn.polyfill.io/v2/polyfill.min.js"></script>

その後、問題が修正され、Web ページが読み込まれます。それでも、なぜこれが起こるのかを理解する必要があります。

于 2016-04-15T09:45:57.150 に答える