只有命名空间中的第一个元素返回一个对象
Only first element in namespace returning an object
知道为什么只有 wrapper 会 return 一个包含预期对象的数组吗?我该如何解决这个问题?创建像这样的名称 space 的最佳方法是什么?
const bubble = {}
bubble.Name = {
mainDivId: "bubble",
svgId: "bubble-svg",
firstSvgG: "bubble-g-space",
nodeClass: "nodes",
}
bubble.Element = {
wrapper: d3.select('#' + bubble.Name.mainDivId),
svgOuter: d3.select('#' + bubble.Name.svgId),
svgInner: d3.select('#' + bubble.Name.firstSvgG),
nodes: d3.selectAll('.' + bubble.Name.nodeClass),
}
const bubble = {}
bubble.Name = {
baseDivId: "bubble",
outerSvgId: "bubble-svg",
innerSvgId: "bubble-g-space",
nodeClass: "nodes",
}
bubble.Element = new function() {
this.wrapper = () => {
return d3.select('#' + bubble.Name.baseDivId);
}
this.svgOuter = () => {
return d3.select('#' + bubble.Name.outerSvgId);
}
this.svgInner = () => {
return d3.select('#' + bubble.Name.innerSvgId);
}
this.nodes = () => {
return d3.select('#' + bubble.Name.nodeClass);
}
}
知道为什么只有 wrapper 会 return 一个包含预期对象的数组吗?我该如何解决这个问题?创建像这样的名称 space 的最佳方法是什么?
const bubble = {}
bubble.Name = {
mainDivId: "bubble",
svgId: "bubble-svg",
firstSvgG: "bubble-g-space",
nodeClass: "nodes",
}
bubble.Element = {
wrapper: d3.select('#' + bubble.Name.mainDivId),
svgOuter: d3.select('#' + bubble.Name.svgId),
svgInner: d3.select('#' + bubble.Name.firstSvgG),
nodes: d3.selectAll('.' + bubble.Name.nodeClass),
}
const bubble = {}
bubble.Name = {
baseDivId: "bubble",
outerSvgId: "bubble-svg",
innerSvgId: "bubble-g-space",
nodeClass: "nodes",
}
bubble.Element = new function() {
this.wrapper = () => {
return d3.select('#' + bubble.Name.baseDivId);
}
this.svgOuter = () => {
return d3.select('#' + bubble.Name.outerSvgId);
}
this.svgInner = () => {
return d3.select('#' + bubble.Name.innerSvgId);
}
this.nodes = () => {
return d3.select('#' + bubble.Name.nodeClass);
}
}