uniapp开发小程序-如何判断小程序是在手机端还是pc端打开

官方说明

https://developers.weixin.qq.com/miniprogram/dev/devtools/pc-dev.html

小程序如何判断是 PC 平台?

通过 getSystemInfo 官方接口(platform 是 windows)

通过 UA(PC UA 包含 MiniProgramEnv/Windows)

App.vue

html 复制代码
<script>
export default {
  onLaunch: function () {
    console.warn(
      "当前组件仅支持 uni_modules 目录结构 ,请升级 HBuilderX 到 3.1.0 版本以上!"
    );
    console.log("App Launch", uni.getSystemInfoSync().platform);
    uni.setStorageSync("platform", uni.getSystemInfoSync().platform);
    uni.setStorageSync(
      "windowWidth",
      wx.getStorageSync("devices").windowWidth 
    );
    uni.setStorageSync(
      "windowHeight",
      wx.getStorageSync("devices").windowHeight 
    );
  },
  onLoad() {},
  onShow: function () {
  },
  onHide: function () {
  },
};
</script>

<style lang="scss">
/*每个页面公共css */
@import "@/uni_modules/uni-scss/index.scss";
// 设置整个项目的背景色
page {
  background-color: #f5f5f5;
}
</style>

判断是否是pc端的函数(如果宽度足够也视为pc端)

js 复制代码
/** 是否是pc端 */
function isPC() {
  if (["windows", "mac"].some((v) => v === wx.getStorageSync("platform"))) {
    return true;
  }
  if (Number(wx.getStorageSync("windowWidth")) > 1000) {
    return true;
  }
  return false;
}

同时值得注意的是,微信开发者工具的platform属性是devtools,只能体验版中进行测试真实的platform属性

相关推荐
hongweihao8 小时前
儿子不收拾玩具,我用AI给他量身定制开发一个APP,这下舒服了
uni-app·app·ai编程
Hashan8 小时前
微信小程序:扁平化的无限级树
前端·微信小程序·uni-app
小徐_23338 小时前
uni-app 无法实现全局 Toast?这个方法做到了!
前端·uni-app
xixixin_10 小时前
【HTML】在页面中画一条0.5px的线
前端·css·uni-app·html·css3
&白帝&10 小时前
Uniapp 自定义头部导航栏
前端·javascript·uni-app
&白帝&10 小时前
Uniapp 条件编译详解
uni-app
xkxnq16 小时前
uniapp跨端性能优化方案
uni-app
速易达网络16 小时前
基于UniApp的新大陆物联网平台温湿度检测系统开发方案
物联网·uni-app
har01d1 天前
在 uniapp 里使用 unocss,vue3 + vite 项目
前端·uni-app·vue·uniapp·unocss
程序员陆通1 天前
零基础AI编程开发微信小程序赚流量主广告实战
微信小程序·小程序·ai编程