微信小程序px和rpx单位互转方法

js代码如下

js 复制代码
Page({
  data: {
    width: 0,
    width2: 0
  },

  onLoad: function (options) {
    let px = this.pxToRpx(380)
    let rpx = this.rpxToPx(730.7692307692307) 

    // 检查两个互转是否是相同即可,例如pxToRpx(380)转成730.7692307692307 则rpxToPx(730.7692307692307)如果是380则代表互转没问题
    console.log('px',px); // 750(查看控制台打印,不要查看页面元素,因为页面元素只展示px单位)
    console.log('rpx',rpx); // 390(查看控制台打印,不要查看页面元素,因为页面元素只展示px单位)

    this.setData({
      width: px,  
      width2: rpx
    })
  },
  // px转rpx
  pxToRpx(px) {
    return px * 750 / wx.getSystemInfoSync().windowWidth;
  },
  // rpx转px
  rpxToPx(rpx) {
    return rpx / 750 * wx.getSystemInfoSync().windowWidth;
  }
});

wxml代码如下

js 复制代码
<!-- 微信小程序控制台会自动将rpx转成px,会以px单位显示 -->
<view style="width: {{width}}rpx;height: 30px;background-color: pink;margin-top: 200rpx;"></view>

<view style="width: {{width2}}rpx;height: 30px;background-color: pink;margin-top: 20rpx;"></view>
<!-- 检查一下元素100vw时是否是我们转换出来的像素 -->
<view style="width: 100vw;height: 30px;background-color: pink;margin-top: 20rpx;"></view>
相关推荐
EasyNVR26 分钟前
基于WebRTC与AI大模型接入EasyRTC:打造轻量级、高实时、强互动的嵌入式音视频解决方案
运维·服务器·微信·小程序·webrtc·p2p·智能硬件
我命由我1234534 分钟前
微信小程序 - 自定义实现分页功能
前端·微信小程序·小程序·前端框架·html·html5·js
HappyAcmen12 小时前
关于微信小程序的面试题及其解析
微信小程序·小程序·notepad++
乔冠宇12 小时前
微信小程序修改个人信息头像(uniapp开发)
微信小程序·小程序·uni-app
lvbb6613 小时前
微信小程序-路线规划功能
微信小程序·小程序·notepad++
爱上大树的小猪15 小时前
微信小程序模仿快播标签云滚动特效
微信小程序·小程序
從南走到北20 小时前
挪车小程序挪车二维码php+uniapp
微信小程序·小程序·开源·微信公众平台
黑云压城After20 小时前
uniapp小程序自定义日历(签到、补签功能)
小程序·uni-app
黑云压城After21 小时前
小程序(物流、快递),接入GPS北斗获取路线以及当前车辆位置
小程序
万岳科技程序员小金1 天前
互联网医院系统源码解析:如何开发智能化的电子处方小程序?
小程序·app开发·互联网医院系统源码·智慧医疗小程序·医院app