微信小程序之wxss文件使用变量动态计算参数值

微信小程序之wxss文件使用变量动态计算参数值,第1张

一、需求:

swiper组件缩小后需要完全居中。

二、实现方案:

一种方式是flex居中,但我调试后效果不行;还有一种就是绝对定位,使用left 50%,这种我调试也不居中;还有一种就是计算屏幕宽度和swiper宽度,绝对定位后left=(屏幕width-swiper width)/2,本文介绍最后一种实现方式。

三、程序实现

31 js文件

data声明变量

onload时计算参数值

32 wxss文件

使用绝对定位,left使用变量,格式: var( --变量名--)

33 wxml文件

swiper外用一个view组件,并使用变量,格式:style="--left--:{{动态变量}}px"

四、实现效果

应一位 小程序 开发者的需求,对微信打赏接口进行测试。本人接触微信小程序的时间不长,解析 微信事项打赏

项目结构目录树

微信给出的demo

JS原型链修改变量的值

对于微信小程序,微信官方统一封装了wx模板,wx:for指定的模板变量对应同一目录下JS的Page节data部分

1为渲染一个包含多节点的结构块使用 block:for 标记

2设置 wx:for 绑定数组为 data Json中的 chatList , wx:key 绑定 chatList 索引为 time

3 wx:if 判定 orientation 该事项是否已经移除

1通过微信的内置方法 getApp() 拿到全局应用的数据,在文档中,我们可以看到以下两行

2根据上文生命周期函数的文档解释,我们首先在 data 数组里使用用户数据 userInfo , 聊天数据列表 chatList 作为被设置的变量

3如上文所述,我们用一个 that 指针替换指向全局实例指针 this ,便于在需要在执行生命周期函数的时候,设置想要设定数据的值,关于 userInfo 变量,参考上文原型链定义,将 getUserInfo 方法添加到 appjs 文件中,以便获取或设置全局数据,不受上下文作用域影响。

4当执行到 onReady 函数时,监听页面初次渲染完成,小程序从后台进入前台显示,回调全局方法 addChatList 将之前设置在 data 中的变量 chatList 传进 chatListData 数组

5在 addChatList 方法中设置需要的Json格式

indexjs

indexwxml

appjson

appjs

Development Items:

indexjs

题主是否想问小程序canvas渲染慢方法。画面复杂:如果小程序canvas中的画面比较复杂,包含大量的图形、文本和动画等,可能会导致渲染速度变慢。解决方法可以是优化canvas的绘制逻辑,减少不必要的绘制 *** 作,或者将画面拆分为多个图层进行绘制,以提高渲染效率。

1、过大:如果小程序canvas中使用了过大的,也会影响渲染速度。解决方法可以是对进行压缩,或者使用小尺寸的进行绘制。

2、不合理的动画:如果小程序canvas中存在复杂的动画效果,比如粒子动画、路径动画等,也会影响渲染速度。解决方法可以是使用更简单的动画效果,或者使用硬件加速进行渲染。

3、设备性能不足:如果小程序运行的设备性能较低,也会导致canvas渲染速度变慢。解决方法可以是优化canvas的绘制逻辑,减少不必要的绘制 *** 作,或者在运行时提示用户升级设备或换用更高性能的设备。

4、他因素:还有一些其他因素也可能会导致小程序canvas渲染慢,比如网络延迟、内存占用过高等。解决方法可以是优化网络请求、减少内存占用等。

小程序的wxs功能可以让wsmxl可以调用和编写js,基本上wxs和JS无关系,只是语法形式很相似。

如下写了两个关于时间的函数,并将它们导出,

<wxs module="m1">

var getMax = function(flightDate) {

    var now = getDate()getDate();

    var flDate = getDate(flightDate)getDate();

    if( now < flDate ){

      return '+1';

    }else{

      return '';

    }

}

var formartTime = function(flightDate,format){

  if(flightDate){

    var realDate = getDate(flightDate);

    function timeFormat(num) {

      return num < 10 '0' + num : num;

    }

    var date = {

      "Y": timeFormat(realDategetFullYear()),

      "M": timeFormat(realDategetMonth() + 1),

      "d": timeFormat(realDategetDate()),

      "h": timeFormat(realDategetHours()),

      "m": timeFormat(realDategetMinutes()),

      "s": timeFormat(realDategetSeconds()),

      "q": Mathfloor((realDategetMonth() + 3) / 3),

      "S": realDategetMilliseconds(),

    };

    if (!format) {

      format = "yyyy-MM-dd hh:mm:ss";

    }

    if( format == 'hh:mm' ){

        return dateh+':'+datem;

    }else{

        return dateh+':'+datem;

    }

  }else{

    return false;

  }

}

moduleexportsgetMax = getMax;

moduleexportsformartTime = formartTime;

</wxs>

可在页面添加如下使用:

m1formartTime();  m1getMax();

以上就是关于微信小程序之wxss文件使用变量动态计算参数值全部的内容,包括:微信小程序之wxss文件使用变量动态计算参数值、微信小程序 - 微信打赏Step by Step、小程序canvas渲染慢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9830898.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存