javascript - Cytoscape 布局 - 找不到这样的布局可乐

标签 javascript angular typescript cytoscape.js

我在带有 Typescript 的 Angular 2 项目上使用 Cytoscape 并想使用 Cola 布局。因此,我使用 npm 将依赖项添加到我的项目中。由于我将 Angular 2 与 Typescript 一起使用,因此我首先将 js 模块添加到 angular-cli.json 文件,然后再添加到 index.html 文件。之后,在我用来显示图形的 Angular 组件 NetworkComponent 中,我按如下方式导入库:

声明 var cola:any;

然后我尝试使用如下布局:

   this.cyto = cytoscape({
            container: document.getElementById("graph"),
            elements: this.graph.elements,
            style: res.json()
            });
    this.cyto.layout({name: "cola"});

图表不显示,我在控制台中收到以下错误:

Can not apply layout: No such layout 'cola' found; did you include its JS file?

我可以使用 concentric 布局和图形显示,但对于其他布局扩展,例如 cose-bilkentspringy,我得到了同样的错误>.

如何导入可乐库并将其用作我的图形布局?这里可能出了什么问题?

最佳答案

  1. 安装cytoscape-cola:

    npm install cytoscape-cola --save
    
  2. 导入cytoscape-cola模块:

    import cola from 'cytoscape-cola';
    
  3. 在组件中使用cola:

    cytoscape.use(cola);
    

然后就可以调用cola布局了。

关于javascript - Cytoscape 布局 - 找不到这样的布局可乐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47240154/

相关文章:

javascript - 使用 split() 方法分割字符串

angular - Ng2-smart table 使用复选框获取选定的行

html - 如果在用户触摸后输入为空/不正确,则显示不同的错误消息

javascript - 类型 'Observable<Object>' 不可分配给类型 'Observable<IUser[]>'

javascript - TypeScript:使用扩展运算符设置 Object.prototype

javascript - Chrome推送通知-点击后如何打开URL地址?

javascript - 对动态填充的列表框进行排序

javascript - 在函数中添加另一个搜索字段

javascript - 我的删除方法是拼接数组中的最后一项,而不是所选项目

来自共同来源的 Angular 条件分量