私はここ数週間、これに対する答えを探していて、見つけた関連するすべてのものを読みました(SO、Reactのドキュメント、react-codemirrorなどの関連ライブラリのソースなど)、そして、私が理解できる答えを見つけることができません。私は React が苦手で、おそらくそこに落ち込んでいます。
私は、Firepad を使用する React (教室向けのブラウザーおよびデスクトップ エディターである Pharaoh と呼ばれる) で構築されたプロジェクトに取り組んでいます (したがって、私が大好きな Firebase と CodeMirror を使用しています)。CodeMirror を使用したデスクトップ Markdown エディターの作成や、Firebase を使用したいくつかのデモ/練習アプリの作成など、上記のすべてのテクノロジを少し使用しました。ここでの私の問題は、ほぼ間違いなく、React を十分に理解していないことの 1 つです。
私がやろうとしているのは、ファイルを Firepad/CodeMirror インスタンスから (デスクトップに) 保存できるようにすることです。私は FileReader と HTML5 Filesystem API の使用方法を一般的に知ってnode-fs
います。ここでのターゲットはデスクトップ アプリ (NW.js で実行される) であるため、これは で実行できる可能性もあります。
CodeMirror には、editorName.codeMirror.doc.getValue()
完全に機能する非常に便利なメソッドがいくつかあります。Firepad はさらに単純ですeditorName.firepad.getText()
(そして.setText()
、ファイルシステムからファイルをロードするためにも使用することになります)。私はこれらがどのように機能するかを知っており、それらが返すものをどのように取得して保存するかを理解できます。それは問題ありません。私の問題は、これらのメソッドに実際にアクセスできないことです。これはおそらく、サードパーティのライブラリやコンポーネントからのメソッドへのアクセス全般について知っておくべきばかげたことですが、ちょっと困惑しています。仕事でよく使うツール、Codeshare.io は React に組み込まれており、Firepad を使用していると思われますが、これらのメソッドが公開されているので、そのソースを掘り下げて (cURL の場合はそうです)、見つけられるかどうかを確認します。答えますが、もっと速いものは本当に役に立ちます。
どうもありがとう!
注: SO の評判をもっと獲得する必要があると思います。投稿する前に、一連のリンクを削除/変更しました。