2

私は scala-js フロントエンド フレームワークを書いています。その主な機能はサーバー側のレンダリングです。document.createElementなどでdom を操作するコンポーネントがあるという考えでしたelement.appendChildHTMLDocumentサーバーでは、などをサブクラス化し、Elementそれらのメソッドをプレーン文字列 html に変換できるサーバー dom 実装でオーバーライドします。そこでscalajs-dom_sjs、サーバーモジュールに依存関係を追加して、それをやろうとしました。しかしHTMLDocumentElementおそらく他のクラスには呼び出しがありますjs.native「ライブラリのJVMバージョンを使用する」という例外をスローするコンストラクター内。これは明らかに存在しません。別の方法を使用して独自の dom ライブラリを実装することもできますが、サーバーとクライアントに実装する必要があるため、2 倍の作業が必要になりますが、最初のアプローチではサーバーに 1 回だけ実装します。

だから私の質問は: サーバーで scala-js ライブラリのバージョンを使用することが非常に厳密に禁止されているのはなぜですか?それを回避する方法はありますか?

4

1 に答える 1