2017-03-22 11 views
0

cytoscape js libのレンダラー拡張の作成を手伝ってください。ここでCytoscape jsはカスタムレンダラーを作成します(レンダラー拡張子)

は、それが今取り組んでいる方法です。

let CanvasRenderer = cytoscape('renderer', 'canvas'); 
 

 
CanvasRenderer.prototype.drawPolygonPath = function(context, x, y, width, height, points) { 
 
    // my implementation goes here 
 
}

それはcytoscape siteに言うように、それは拡張可能なライブラリです!私は私のプロジェクトでtypescriptですを使用しているように私はこのような何かをしたい:

class MyRenderer { 
 

 
    constructor() { 
 
     
 
    } 
 
} 
 

 
cytoscape('renderer', 'myRenderer', MyRenderer);

このコードは明らかに私はいくつかのメソッドを実装していないと言うcytoscapeエラーを...スロー

それから、私は拡張子cytoscape-css-rendererを見つけました。それは私のバージョンのcytoscapeで動作しませんでした(私は2.7.13を使用しています) 私はcytoscape-css-rendererと同様にこの問題を解決しようとしました:

let CanvasRenderer = cytoscape('renderer', 'canvas'); 
 

 
class MyRenderer { 
 

 
    constructor(options) { 
 
     CanvasRenderer.call(options); 
 
    } 
 

 
} 
 

 
MyRenderer.prototype = Object.create(CanvasRenderer.prototype); 
 
MyRenderer.prototype.constructor = MyRenderer; 
 
$.extend(PricingRenderer, CanvasRenderer); 
 

 
cytoscape('renderer', 'myRenderer', MyRenderer);

が、それは、このエラーがスローされます:clientFunctionsはすでにプロトタイプで存在し、

を上書きすることができないので、誰かがこれで私を助けることができるので、

rendererためmyRendererを登録できません... ありがとうございました!

+0

が見えます –

答えて

関連する問題