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

相关推荐
李纲明4 分钟前
微信小程序真机预览白屏或 request 失败:先核 request 合法域名与 TLS,再查体验版与本地缓存
缓存·微信小程序·小程序·小程序开发·devdiy·真机预览·合法域名
PedroQue992 小时前
v0.2.0 架构升级:class + reactive 重塑状态管理
前端·uni-app
klfdgl2 小时前
线上商城小程序投入测算,有成熟开发经验服务商的长期收益对比
小程序
一木 之林15 小时前
Dify学习笔记 03 · RAG检索增强生成:三代范式、评估与落地(第40-45、55-56集)
笔记·小程序·交互·dify
赵小哥要冲啦20 小时前
社区邻里互助小程序从 0 到 1 复盘:需求拆解与信任机制设计
java·小程序·需求分析
河北清兮网络科技1 天前
石家庄做一套企业知识库系统多少钱?2026 报价明细
小程序·短剧app·广告联盟
Ai-_Man1 天前
Coze扣子还是不可以导出左侧所有对话,只能点进去单条内容导出,方法不对吗?
开发语言·人工智能·ai·小程序·1024程序员节
微订校园外卖平台1 天前
新手做校园外卖平台:小程序启动顺序与订单链路验收
小程序·外卖系统·本地生活·微订
FX1317887KP_2 天前
KET口语Part 2看图对话怎么练?“观察—提问—回应”;三步法讲透
小程序·ket口语·pet口语·fce备考·剑桥英语
沃达德软件2 天前
智慧教育教学资源管理系统(PC端+微信小程序)
微信小程序·小程序