vue中的this.$refs在react中如何实现

Brad
  • 25

Object.entries(this.$refs).forEach(([k, v]) => k.includes('line') && this.list.push(v))

我需要获取一个svg中所有有ref的线条并修改其样式

回复
阅读 691
2 个回答

这种直接操作Dom,只要在组件mounted之后,就算不用refs也是能实现的吧。

reactcreatingRefs 来创建引用,不过与 Vue 有所不同, react 是先在逻辑里 createRef,再从视图中引用,这是官方的例子:

class MyComponent extends React.Component {
  constructor(props) {
    super(props);
    this.myRef = React.createRef();  }
  render() {
    return <div ref={this.myRef} />;  }
}

最终使用的时候,this.myRef.current 才是指向 DOM 的,不过不知道 svg 是否亦然。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
你知道吗?

宣传栏