皆さん、こんにちは。
素敵なマーメイドテーマコンポーネントを流用し、RapiDoc をウェブコンポーネントとして組み込むように変更しました。これにより OpenAPI 仕様をレンダリングできます。
ウェブコンポーネントでオペレーションをクリックすると、ブラウザがフリーズすることがあり、何が起こっているのか把握するのが困難です。
タブを閉じるしかありません。同じ RapiDoc バージョンと OpenAPI 仕様で、他のページに埋め込んだ場合にはこの問題は発生しません。
行われることは、オペレーションの ID を URL のアンカーとして追加することです。例: _https://my-site/t/my-topic/150#post-/clusters/-clusterID-/gateway。おそらく、URL 変更をリッスンしている何かが、このケースでは失敗しているのだと思います。おそらく、ウェブコンポーネントがまだ完全にレンダリングされていないか、または ID がシャドウ DOM で見つからないためでしょう。
コンソールで以下を確認しました。
Promise Rejection: SyntaxError: '#main #put-/clusters/-clusterID-/appliances/-applianceID-/constraints, a[name=put-/clusters/-clusterID-/appliances/-applianceID-/constraints]' is not a valid selector.
URL のアンカーに対応する ID を持つ挿入された要素は、以下のようになります。
<section
part="section-endpoint"
id="patch-/clusters/-clusterID-"
class="m-endpoint regular-font patch collapsed"
>
この問題の核心にたどり着くためのヒントをどなたか教えていただけますでしょうか?
よろしくお願いします!