当前位置: 首页 > 面试题库 >

在ReactJS中获取视口/窗口高度

海宁
2023-03-14
问题内容

如何在ReactJS中获得视口高度?在普通的JavaScript中,我使用

window.innerHeight()

但是使用ReactJS,我不确定如何获取此信息。我的理解是

ReactDOM.findDomNode()

仅适用于创建的组件。但是,对于documentor body元素而言并非如此,这可能会给我窗口的高度。


问题答案:
class AppComponent extends React.Component {

  constructor(props) {
    super(props);
    this.state = {height: props.height};
  }

  componentWillMount(){
    this.setState({height: window.innerHeight + 'px'});
  }

  render() {
    // render your component...
  }
}

设置道具

AppComponent.propTypes = {
 height:React.PropTypes.string
};

AppComponent.defaultProps = {
 height:'500px'
};

视口高度现在可以在渲染模板中用作{this.state.height}



 类似资料:
  • 我有以下情况 我单击父窗口中的一个链接(即添加注释链接)打开一个新窗口。我添加了一个注释,然后单击关闭按钮切换回父窗口

  • 问题内容: 我正在开发python应用程序,我想获取每个打开的窗口。我需要窗口的名称和来过滤列表,以管理一些特定的窗口,移动它们并调整其大小。 我试图自己查看信息,但没有获得正确的代码。我尝试使用此代码,但仅获得每个窗口的标题(很棒),但我也需要。 这里有一个错误: 问题答案: 你混了和。 在你所得到的是通过获得,是一个对象。这就是为什么不接受它。你应该把它传给 如果要使用,则可以直接使用pyth

  • 问题内容: 我正在尝试获取活动窗口的标题。该应用程序是一个后台任务,因此如果用户打开Eclipse,该函数将返回“ Eclipse- blabla”,因此它不会获取我自己窗口的窗口标题。我正在使用PyQt4在Python 2.6中进行开发。 我当前的解决方案是从SO的旧答案中借用并稍作修改的,看起来像这样: 它适用于大多数窗口,但不是全部。例如,它找不到我的kopete聊天窗口,或者找不到我当前正

  • 我正在使用Selenium从一个在线数据库中提取结果。然而,一旦我选择了我的结果并去导出它们,一个弹出窗口就会出现。通常,我会将框架切换到这个窗口,但它似乎是javascript生成的。当弹出窗口中有元素时,具体名称会不断变化。例如,有一个submitButton id标记。然而,它总是附加着不同结尾。例如,它将是id=“SubmitButton_15BB0B69431”,但下一次它将是完全不同的

  • 问题内容: python中有没有办法以编程方式确定控制台的宽度?我的意思是不换行就适合一行的字符数,而不是窗口的像素宽度。 编辑 寻找适用于Linux的解决方案 问题答案: 使用“ stty size”命令,该命令根据python邮件列表上的线程在linux上相当普遍。它以文件形式打开“ stty size”命令,从中“读取”,并使用简单的字符串拆分来分隔坐标。 与os.environ [“ CO

  • 问题内容: 在angularJs中可以观看全局变量吗? 我从旧版代码中设置了一个window.test变量,然后我需要观察该变量以了解它是否存在。 我尝试过类似的东西 问题答案: 有些。您可以包含Angular 服务(如文档所述,比直接访问更安全): 然后使用watch函数作为您的第一个参数,如下所示: 演示小提琴 但是请注意,只有在触发Angular进行$ digest操作后,才会执行。一种可行