React入门系列教程(十)使用ref直接访问DOM

有的时候我们需要直接和DOM元素打交道,比如有的第三方库需要DOM元素作为参数,在react组件中如何可以直接访问到DOM元素呢?react给我们提供了一个ref属性专门做这个事儿。

<div id="rootElement"></div>
<script src="https://unpkg.com/react@16.8.3/umd/react.production.min.js"></script>
<script src="https://unpkg.com/react-dom@16.8.3/umd/react-dom.production.min.js"></script>
<script src="https://unpkg.com/babel-standalone@6.26.0/babel.min.js"></script>
<script type="text/babel">
    const rootElement = document.getElementById('rootElement')
    class RefTest extends React.Component {
        componentDidMount() {
            console.log(this.childNode)
        }
        render() {
            return (
                <div className="root">
                    Root
                    <div className="child" ref={node => (this.childNode = node)}>Child</div>
                </div>
            )
        }
    }
    ReactDOM.render(<RefTest />, rootElement)
</script>

运行如上代码,我们会在控制台看到<div class="child">Child</div>,成功得到了DOM元素的引用。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • It's a common pattern in React to wrap a component in an ...
    jplyue阅读 3,401评论 0 2
  • 3. JSX JSX是对JavaScript语言的一个扩展语法, 用于生产React“元素”,建议在描述UI的时候...
    pixels阅读 2,979评论 0 24
  • 原教程内容详见精益 React 学习指南,这只是我在学习过程中的一些阅读笔记,个人觉得该教程讲解深入浅出,比目前大...
    leonaxiong阅读 2,944评论 1 18
  • 出发地点:四川省西昌青山机场,目的地:凉山彝族自治州九龙县。途径G5高速公路和G108国道、S215省道,全程约2...
    2018栏杆拍遍阅读 74评论 0 0
  • 我有个可爱又淘气的弟弟。他长得虎头虎脑,胖乎乎的,一笑起来脸上就露出了两个甜甜的小酒窝。他有一双水汪汪的眼...
    潘子谙阅读 385评论 0 2

友情链接更多精彩内容