博客
关于我
uniapp:动态设置高度
阅读量:639 次
发布时间:2019-03-15

本文共 788 字,大约阅读时间需要 2 分钟。

在 Vue.js 中使用 CSS 变量结合动态样式优化时,动态获取元素高度处理是一个常见的需求。以下是关于如何在 uni-app 中统一使用 luarejs 模型实现本地 CSS 变量赋值的实践方法。

动态样式变量赋值处理

需要注意的关键点在于,通过 js动态计算元素的高度,并将计算结果赋值给 CSS 变量中。

实现方式

  • beforeCreate 计算高度,并赋值给 CSS变量
  • beforeCreate() {  const query = uni.createSelectorQuery().in(this);  const infoQuery = query.selectAll('.info-items').boundingClientRect();  return infoQuery.exec((res) => {    const infoHeight = res[0][0].height;    this.headerHeight = `${infoHeight * 0.8}px`;  });},
    1. created lifecycle hook 冷启动后面的操作
    2. created() {  uni.vUpdate('headerHeight', '120px');},

      通过这种方式,可以进行前后双重锁,确保视图正确初始化后再执行高度计算,避免出现计算前期渲染的问题。

      注意事项

      • 计算优化:动态计算高度时,尽量减少计算次数,避免开销过大。

      • 性能问题:在 beforeCreate 中如果频繁调用Uni查询,可能会导致性能问题,需要根据实际情况判断是否需要权限。

      • 视图触发:在 viewport 触发事件时,可能导致多次计算,应谨慎处理。

      以上方法结合了 vue 生命周期控制和统一数据更新机制,可以有效实现 header 高度的动态样式控制。

    转载地址:http://pmalz.baihongyu.com/

    你可能感兴趣的文章
    查找最小值栈的O(1)
    查看>>
    淘宝天猫双十一养猫组队怎么踢人
    查看>>
    Java面试题整理,闭关在家37天“吃透”这份345页PDF,纯干货
    查看>>
    Java攒了一个月的面试题及解答,成功入职字节跳动
    查看>>
    概念唱片Plastic Beach封面高清壁纸
    查看>>
    旅游后期效果Ography Lightroom预设
    查看>>
    唯美动漫插画高清壁纸
    查看>>
    圆角几何艺术动态壁纸
    查看>>
    SpamSieve for mac(邮件过滤器)
    查看>>
    炫酷的圣诞球徽标AE模板
    查看>>
    清新的彩虹折线PS填充图案
    查看>>
    uFocus for Mac(mac文本编辑器)
    查看>>
    2017CS231n笔记5.CNN
    查看>>
    Linux系统安装Nodejs
    查看>>
    vue项目报错集合
    查看>>
    golang语法基础 编译、运行
    查看>>
    图片链接
    查看>>
    html-javascript网页编辑-绘图连线
    查看>>
    C-Makefile的简单规则与介绍
    查看>>
    LINUX-WIFI无线接入的一些东西
    查看>>