【发布时间】:2014-04-09 21:44:00
【问题描述】:
我想在组件的根 DOM 元素中间放置一个圆圈:
var App = React.createClass({
render: function() {
return <svg ref="svg">
<circle r="9" cx={this.centerX()} cy="15"/>
</svg>;
},
centerX: function() {
var svg = this.refs.svg.getDOMNode();
return svg.offsetLeft + Math.round(svg.offsetWidth / 2);
}
});
鸡和蛋的问题发生在这里:this.refs 在第一次渲染时未定义。解决这个问题的最佳方法是什么?我不希望引用外部 DOM 节点(例如 document.body)。
【问题讨论】:
标签: javascript layout reactjs