今天就跟大家聊聊有关使用React怎么根据宽度自适应高度,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
创新互联建站从2013年创立,先为麟游等服务建站,麟游等地企业,进行企业商务咨询服务。为麟游企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
而在React中无需依赖于JQuery,实现相对比较简单,只要在DidMount后更改width即可
Try on Codepen
需要注意的是在resize时候也要同步变更,需要注册个监听器
class Card extends React.Component {
constructor(props) {
super(props);
this.state = {
width: props.width || -1,
height: props.height || -1,
}
}
componentDidMount() {
this.updateSize();
window.addEventListener('resize', () => this.updateSize());
}
componentWillUnmount() {
window.removeEventListener('resize', () => this.updateSize());
}
updateSize() {
try {
const parentDom = ReactDOM.findDOMNode(this).parentNode;
let { width, height } = this.props;
//如果props没有指定height和width就自适应
if (!width) {
width = parentDom.offsetWidth;
}
if (!height) {
height = width * 0.38;
}
this.setState({ width, height });
} catch (ignore) {
}
}
render() {
return (
{`${this.state.width} x ${this.state.height}`}
);
}
}
ReactDOM.render(
,
document.getElementById('root')
);参考资料

看完上述内容,你们对使用React怎么根据宽度自适应高度有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。