我正在尝试从外部脚本文件访问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>
);
}
//脚本
var myDiv = document.getElementById('targetDiv');
console.log(myDiv);
答案 0 :(得分:0)
要解决此问题,我需要将外部脚本作为函数导入,然后在安装组件后调用该函数:
//组件
import { myScript } from './../data/script';
componentDidMount() {
{
myScript();
}
}
render() {
return (
<div id='targetDiv'>
{My script now renders correctly inside the div}
</div>
);
}
//脚本
var myDiv = document.getElementById('targetDiv');
const d = document.createElement('p');
myDiv.appendChild(d);