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属性

相关推荐
小胖墩有点瘦30 分钟前
基于RNN+微信小程序+Flask的古诗词生成应用
微信小程序·小程序·flask
坚果的博客1 小时前
uniapp版本加密货币行情应用
人工智能·华为·uni-app·harmonyos
菲力蒲LY2 小时前
固定表头、首列 —— uniapp、vue 项目
前端·vue.js·uni-app
帅次3 小时前
Flutter:StatelessWidget vs StatefulWidget 深度解析
android·flutter·ios·小程序·swift·webview·android-studio
帅次5 小时前
Flutter Widget 体系结构解析
android·flutter·ios·小程序·xcode·web app·dalvik
郑州拽牛科技14 小时前
开发社交陪玩app小程序
大数据·微信小程序·小程序·系统架构·开源软件
大麦大麦14 小时前
深入剖析 Sass:从基础到进阶的 CSS 预处理器应用指南
开发语言·前端·css·面试·rust·uni-app·sass
逍遥客.16 小时前
uniapp对接打印机和电子秤
javascript·vue.js·uni-app
源码姑娘17 小时前
基于Nodejs的火车订票小程序(源码+部署教程)
小程序·毕业设计