zoukankan      html  css  js  c++  java
  • pc端大屏自适应

    • react版本
    按1920/1080的比例进行缩放比例的换算,本地屏幕的宽高取innerWidth和innerHeight
    在需要进行大屏适配的页面添加如下代码,大屏内部的计算单位直接使用px就可以了
    
    //1、计算scale值,并存储在state中
    getScale = () => {
        const width = 1920,
              height = 1080;
        let ww = window.innerWidth / width;
        let wh = window.innerHeight / height;
        return ww < wh ? ww : wh;
      };
      constructor(props) {
        super(props);
        // this.state = { theme };
        this.state = {
          timer: 0,
          scale: this.getScale(),
        };
      }
    //2、监听resize变化,赋给不同的scale比例值
     componentDidMount() {
        //let begin_time = `${moment(new Date())
          .subtract(10, 'days')
          .format('YYYY-MM-DD HH')}:00:00`;
        //let end_time = `${moment(new Date()).format('YYYY-MM-DD HH')}:00:00`;
        //this.loadTotalPlan();
        //this.loadAggsData(begin_time, end_time);
        //this.intervalLoad(begin_time, end_time);
        window.addEventListener('resize', this.handleResize);
      }
    //debounce为防抖函数
    handleResize = debounce(() => {
        let scale = this.getScale();
        // console.log(scale, 'scale-----');
        this.setState({
          scale: scale,
        });
      }, 300);
    //3、在render的使用,加在标签上
     <div
            className={styles.screenBox}
            style={{
              transform: `scale(${scale})`,
              transformOrigin: 'left top',
               '1920px',
              height: '1080px',
              overflow: 'hidden',
            }}
          >
    </div>
    
  • 相关阅读:
    [windows] gcc编译器
    [windos] 命令
    软件版本命名规范
    [linux] vim 编辑器---更改注释文字颜色
    Call Indels/SV常用软件-搬运工
    [生物信息比对软件列表]
    [samtools] 文本查看语法,浏览SNP/INDEL位点
    [python] 之 异常对象
    [python] 之 类-运算符重载
    [R] 之 管理工作空间函数
  • 原文地址:https://www.cnblogs.com/shewill/p/15044032.html
Copyright © 2011-2022 走看看