2017-03-16 25 views
0

私はCodeMirrorをソースコードエディタとして使用するAngular 2アプリケーションを作成しています。私はCodeMirrorにDOMノードを提供する必要があるラインウィジェットを追加したいと思います。私は、このウィジェットのアプリケーションデータに依存する複雑なロジックをいくつか配置したいので、Angularコンポーネントである必要がありますが、DOMノードにAngular要素をレンダリングする方法を理解できません(または、でも可能です)。通常はViewContainerRefを使用して行いますが、この場合は動作しません。DOMノードのレンダリング角度2コンポーネント

角度2を使用してこれを達成する方法はありますか?

+0

:あなたができるあなたのtypescriptファイルに、次に

<div #element> </div> 

そして、:あなたは、角2コンポーネントからDOMノードを取得する必要がある場合は、このような何かを行うことができますどんな場合でも

、その解決策を見つけましたか?私は同じ問題を抱えている。 – yl2015

答えて

0

あなたはいつもng2-codemirror(https://www.npmjs.com/package/ng2-codemirror)を使用することができます。

import * as ng from "angular2/core"; 

export class MyComponent { 
    @ng.ViewChild("element", {read: ng.ElementRef}) 
    element: ng.ElementRef; 

    ngAfterViewInit(){ 
     this.element.nativeElement; // you dom node is here! 
    } 
} 
+0

これは単にCodeMirror要素ですが、私はCodeMirror内のウィジェットについて、CodeMirror.Editorインスタンスの 'addLineWidget'メソッドを使用しています – Dirk