这是 Raappid Toolkit 的一个实例,它使用 jointJS 来构建用于 Web 开发的可视化工具。 /image/6XSis.png
在这个工具包中,您可以制作一个可以成为网站的图表。
我的问题如下:
在此图表的每个元素中,其下方都有一个框,其中包含:x、y、宽度、高度、 Angular 。
我想更改此框内容的信息并显示此元素中的一些信息,但我必须在其中添加代码片段的代码如下(var Halo 是图中我的元素的 var):
var halo = new joint.ui.Halo({
cellView: cellView,
boxContent: function(cellView) {
return"Here I want to display my box content info instead of x,y,width,height, angle";
}
}).render();
如果我尝试在其中添加代码以以 JSON 格式访问我当前的元素信息,我的完整代码是:
var halo = new joint.ui.Halo({
cellView: cellView,
boxContent: function(cellView) {
// Drawing
var selectedObjectDataText = JSON.stringify(this.cellView.toJSON());
var selectedObjectDataJSON = JSON.parse(selectedObjectDataText);
return(selectedObjectDataJSON[0].wi_name);
}
}).render();
其中 wi_name 是我的元素的名称,但在第一行中我无法访问图表的特定元素。
var selectedObjectDataText = JSON.stringify(this.cellView.toJSON());
由于 this.cellView.toJSON() 不起作用,是否有任何全局方法可以访问我的光环(我的图形元素)? 我尝试了 this.model.toJSON() this.cellView.model.toJSON() 等,但没有结果
最佳答案
请注意,JointJS links
和 elements
是主干模型(linkView
和 elementView
是主干 View )。
要获取属性的当前值,请使用 get()
方法。
boxContent: function(cellView) {
return cellView.model.get('wi_name');
}
或者您可以使用 prop()
,也可以返回模型的嵌套属性。
boxContent: function(cellView) {
return cellView.model.prop('wi_name');
}
关于javascript - 我无法访问我当前的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39248939/