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

相关推荐
Cerrda40 分钟前
🌟让你的uniapp应用拥有更现代的交互体验,一个支持滚动渐变透明的导航栏组件🌟
uni-app
2501_916007472 小时前
iOS 应用性能测试的工程化流程,构建从指标采集到问题归因的多工具协同测试体系
android·ios·小程序·https·uni-app·iphone·webview
book多得3 小时前
刷题专用微信小程序推荐
微信小程序·小程序
00后程序员张5 小时前
iOS 抓不到包怎么办?从 HTTPS 解密、QUIC 排查到 TCP 数据流分析的完整解决方案
android·tcp/ip·ios·小程序·https·uni-app·iphone
前端互助会6 小时前
UNI-APP开发APP避坑指南:这些关键事项你必须掌握
uni-app
技术与健康6 小时前
微信小程序云开发实践:共享环境与LLM整合经验
微信小程序·小程序
老华带你飞8 小时前
社区养老保障|智慧养老|基于springboot+小程序社区养老保障系统设计与实现(源码+数据库+文档)
java·数据库·vue.js·spring boot·小程序·毕设·社区养老保障
发财北9 小时前
本地生活小程序开发方案
小程序
游戏开发爱好者81 天前
iOS 商店上架全流程解析 从工程准备到审核通过的系统化实践指南
android·macos·ios·小程序·uni-app·cocoa·iphone
toooooop81 天前
Vuex 中 state、mutations 和 actions 的原理和写法
前端·javascript·uni-app