通常は Web で使用され、数百万行のコードを含む内部 Javascript ライブラリを使用しようとしています (したがって、React Native で何かを変更するのではなく、実際に使用したいのです:D)。
このライブラリには、抽象化されたいくつかの DOM 操作が含まれており、React Native を使用して抽象化を機能させようとしています。
基本的に、Web で行うことは、HTML 要素をライブラリに渡すことであり、ライブラリはそれを他の要素で埋めます。後で、このライブラリは、何をするように指示したかに応じて、ツリーから要素を削除したり、要素を追加したりします。したがって、このライブラリに ReactElement を渡して、React Native が描画部分を自動的に処理できるようにしたいと考えています。
ライブラリが行うことは次のとおりです。非常に単純化されています。
function libraryCode(element) {
element.append(otherElement);
}
var element = document.createElementNS('div');
libraryCode(element);
return element;
そして、これが私ができるようにしたいことです:
render() {
var element = React.createElement(Element);
libraryCode(element);
return element;
}
しかしReactElement
、機能はありませんappend
。そこで、どうにかして ReactElement に関数を追加する方法はないかと考えていました。子を追加して要素を再レンダリングする append という関数を作成できます。私は試してみましたが、明らかに読み取り専用です。ReactElement クラスを拡張したかったのですが、ReactElement の代わりに自分のクラスを使用するように React に指示するにはどうすればよいですか?
var elem = React.createElement(Element);
elem.append = function() {};
私は新しいアイデアにもオープンです。私は React/React Native にまったく慣れていないので、これですべて間違っているかもしれません! :)
ありがとう