Javascript 如何使函数在react加载后运行
我有这个功能,在我的react项目中,witch将创建并加载一个表。函数之后是我的html代码,但每次执行代码时,Javascript 如何使函数在react加载后运行,javascript,reactjs,dom,frontend,jsx,Javascript,Reactjs,Dom,Frontend,Jsx,我有这个功能,在我的react项目中,witch将创建并加载一个表。函数之后是我的html代码,但每次执行代码时,文档的getElementById都未定义。我尝试在div中使用onLoad,但函数不执行 我尝试在返回后运行该函数,但它仍然不起作用。我已经对代码做了太多更改,不知道该怎么办。有人能帮忙吗?谢谢 export default function Calendario(){ function desing_calendario(){ let height = 5 le
文档的getElementById
都未定义。我尝试在div
中使用onLoad
,但函数不执行
我尝试在返回后运行该函数,但它仍然不起作用。我已经对代码做了太多更改,不知道该怎么办。有人能帮忙吗?谢谢
export default function Calendario(){
function desing_calendario(){
let height = 5
let width = 7
var html = "<table cellpadding=0 cellspacing=0>";
for (let i = 0;i < height;i++){
html += "<tr>"
for(let a = 0;a < width;a++){
html += "<td>"
html += (a+1)
html += "</td>"
}
html += i
html += "</tr>";
}
html += "</table>"
document.getElementById('calendario').innerHTML = html ;
}
return(
<div id='calendario' onload="desing_calendario()">
</div>
);
}
导出默认函数Calendario(){
功能设计{
让高度=5
让宽度=7
var html=“”;
for(设i=0;i
不要过多地讨论您试图通过表实现什么和不实现什么的细节。让我们直接进入箭头函数。它们将帮助您的代码更加简洁,当然也有助于解决您可能遇到的任何绑定问题。快速查看一下,我想您可以将desing_calendario函数的第一行更改为:
const desing_calendario = () => {
然后使用onload,您可以简单地引用函数的变量
onload={desing_calendario}
话虽如此,花时间学习更多关于钩子的知识是值得的。在这种情况下,具体使用效果。您已经在使用一个功能组件。因此,进行迁移的工作量不会太大。另外,我建议使用while循环,而不是使用旧的for循环语法。会更干净。而(i
不应该将文本节点作为相邻的同级节点-它应该只具有
同级节点。通常不应该像在React项目中那样对DOM进行命令式操作。我相信这不是你想要的答案,但我认为你只需要找到一些好的教程,涵盖使用React的基础知识。