2012-12-01 12 views
5

私はCodeMirrorを使用してコードのリアルタイムコラボレーションを行うこの小さなプロジェクトを開始しました。CodeMirrorとのリアルタイム共同作業

私は、あるユーザーから別のユーザーにオブジェクトを簡単に渡すようなmsgsシステム設定があります。私の問題はCodeMirrorと統合されていることです。私はそれがonchangeとreplaceRange(文字列、from、to)のイベントを持っていることを知りました。

私はonchangeオブジェクトを他のユーザーに渡し、replaceRangeを使用してビューを更新します。問題は、replaceRangeを使用すると、新しいonchangeをトリガーし、msgsを前後に送信します。誰かが、オンウィッチをトリガーせずにローカルビューを更新する方法があるかどうかを知っています。あるいは、他の道が進むのを示唆している。 (msgsシステムはすでに設定されており、javascriptオブジェクトを他のクライアントに渡すのは簡単です)。

答えて

4

これを正しく機能させるには、変更をマージする必要があります。 CodeMirrorを使用しているオープンソースソリューションのデモについては、http://ot.substance.io/を参照してください。

+0

私はちょうどそのデモを見つけました。それはうまくいくように見えます。 –

+1

silent = true;コード・ミラーを更新する。サイレント=偽;私はそれを解決するために必要なものでした。 –

+0

@pksorensenこんにちは、まったく同じ問題があります。私はあなたのコメントを読んだが、私はここで何が沈黙しているのか分からない。私は実際にコードミラーのマニュアルで何かを見つけることができませんでした。解決策を共有してもらえますか、それともちょっと凝っているのでしょうか?そんなことをしてください。ありがとう –

7

あなたは

FirePadがcodemirrorにopen-source(GitHubの上)のリアルタイムの共同プラグインですFirepad

を使用することができます。コードラインを4行追加して数分でcodemirrorでセットアップできます。バックエンドには Firebaseが使用されています。

+3

firebaseは無料ではなく、プライベートではありません。 – Richard

+0

これは何年も前に私が書いたときだった...そして、Googleはそれを買収した。 – DrFriedParts

関連する問題