在我的React应用程序中,其中一个组件从父组件中获取以 prop 表示的宽度值。
myComponentRef.current.setAttribute('style', 'width:' + props.width + 'px')
我也试着这样做:
myComponentRef.current.style.width = props.width + "px"
在这种情况下,我的组件根据文本的宽度来获取宽度。文本不会换行。如果我以css样式指定宽度,那么一切都会正常工作。文本会被传输。当从组件代码中设置宽度时,它不工作。请帮助我找出问题所在。
1条答案
按热度按时间dfty9e191#
通过js设置组件的宽度可能有几个原因,你可以尝试以下方法来解决:
1.确保myComponentRef.current实际上引用了您要修改的DOM元素。您可以通过添加console.log查看myComponentRef.current的值来检查这一点。
1.确保props.width是组件宽度的有效值。
1.确保你正确地设置了组件的style属性。另一种方法是像这样使用它:
myComponentRef.current.style {宽度: prop 宽度+“像素”};
1.确保没有在代码中的其他任何地方覆盖组件的style属性。