React.jsバンドルをKnockoutページにリンクした際に外部コンポーネントがレンダリングされない


概要

Content Hub 4.2から、Reactへの移行が開始されました。しかし、移行が完了するまでの間、引き続きKnockoutでレンダリングされるページが幾つか存在します。
React.jsのバンドルをベースとした外部コンポーネント(External Component)は、Knockoutページではレンダリングできないため、外部コンポーネントの代わりに空のモーダル ウィンドウが表示される問題が発生する可能性があります。

ページがKnockoutでレンダリングされているかどうかは、以下のようなリンクを使用して、ページのIDで確認することができます。

https://テナントのホスト名/en-us/admin/entitymgmt/entity/{ページのID}

ページがKnockoutでレンダリングされている場合、Entity detailページDataプロパティにisReact: falseというパラメータがあることを確認していただけます。

解決策

この問題を解決するには、外部コンポーネントのコードをKnockoutで書き直し、そのコンポーネントをKnockoutのページで使用してください。その際に、外部コンポーネントのKnockoutバージョンが使用できるように、JSバンドルを利用した外部コンポーネントのバージョンを3.0から1.0に差し戻すようにしてください。バージョンを編集するには、以下のようなリンクから、外部コンポーネントのエンティティにアクセスしてください。

https://テナントのホスト名/en-us/admin/entitymgmt/entity/{外部コンポーネントのID}