繁体   English   中英

从外部脚本访问React DOM Element

[英]Access React DOM Element from external script

我试图从外部脚本文件访问React DOM元素'id'。 我相信我的脚本正在被正确导入,因为来自文件的console.log('test')正在运行,尽管console.log(myDiv)返回null。

我怎样才能在React中实现这一目标?

// 零件

import './../data/script.ts';

  render() {
    return (
        <div id='targetDiv'>
          <p>{This will be populated from my external script file...}</p>
        </div>
    );
  }

// SCRIPT

  var myDiv = document.getElementById('targetDiv');
  console.log(myDiv);

要解决此问题,我需要将外部脚本作为函数导入,然后在安装组件后调用该函数:

// 零件

import { myScript } from './../data/script';

  componentDidMount() {
    {
      myScript();
    }
  }

  render() {
    return (
        <div id='targetDiv'>
          {My script now renders correctly inside the div}
        </div>
    );
  }

// SCRIPT

  var myDiv = document.getElementById('targetDiv');
  const d = document.createElement('p');
  myDiv.appendChild(d);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM