位置: IT常识 - 正文

vue项目pc端和移动端适配(vue移动和pc两套代码)

编辑:rootadmin
vue项目pc端和移动端适配 vue项目pc端和移动端适配1、pc端适配

推荐整理分享vue项目pc端和移动端适配(vue移动和pc两套代码),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:用vue做pc端适合吗,vue项目pc端和移动端适配,vue pc端,vue移动端和pc端写法一样吗,vue pc端,vue项目pc端和移动端适配,vue项目pc端和移动端多适配,vue移动端和pc端项目,内容如对您有帮助,希望把文章链接给更多的朋友!

一、样式中根据设计稿确定缩放比例(可以设置全局或者部分页面)

二、监听窗口大小改变,设置根字体大小 created() { // 获取当前设备的宽度,设置rem的根字体大小 let width = window.innerWidth; width = width <= 1200 ? 1200 : width; const htmlObj = document.getElementsByTagName(“html”)[0]; htmlObj.style.fontSize = width / 76.8 + “px”;

// 对resize事件进行浏览器兼容处理if (document.createEvent) { var event = document.createEvent("HTMLEvents"); event.initEvent("resize", true, true); window.dispatchEvent(event);} else if (document.createEventObject) { window.fireEvent("onresize");}// 监听页面resize事件,重新设置rem的根字体大小window.onresize = function () { let width = window.innerWidth; width = width <= 1200 ? 1200 : width; htmlObj.style.fontSize = width / 76.8 + "px";};

},

三、使用时 如: height:px2rem(100px)

四、如果是部分页面使用,需要页面销毁时清理 destroyed() { const htmlObj = document.getElementsByTagName(“html”)[0]; htmlObj.style.fontSize = “”; window.onresize = null; },

2、移动端项目适配

实现移动端适配步骤如下 1.先安装amfe-flexible和postcss-pxtorem npm install amfe-flexible --save npm install postcss-pxtorem --save 在main.js导入amfe-flexible import ‘amfe-flexible’; 2.配置postcss-pxtorem ,可在vue.config.js、postcsssrc.js、postcss.config.js、其中之一配置,权重从左到右降低,没有则新建文件,只需要设置其中一个即可 在vue.config.js配置如下 module.export={ //…其他配置 css:{ loaderOptions:{ postcss:[ require(‘postcss-pxtorem’)({ rootValue:37.5, propList:[‘‘] }) ] } } } 在.postcssrc.js或postcss.config.js中配置如下: module.exports = { “plugins”: { ‘postcss-pxtorem’: { rootValue: 37.5, propList: [’’] } } }

rootValue根据设计稿宽度除以10进行设置,这边假设设计稿为375,即rootValue设为37.5; propList是设置需要转换的属性,这边*为所有都进行转换。 测试结果:

css中设置某类宽度为375px: .content{ width:375px; }

vue项目pc端和移动端适配(vue移动和pc两套代码)

运行后在浏览器可以发现已经转化为10rem,即375/设置的rootValue: 以上情况则说明postcss-pxtorem配置成功 html的字体大小跟随设备宽度进行改变,body跟随设备的dpr进行改变,这是amfe-flexible的实现,即说明配置成功。 说明,安装过程中可能会遇到以下报错: 1.安装配置后,发现rem并没有生效,解决办法:使用vue.config.js去配置,不要用postcss.config.js 2.抛错[object Object] is not a PostCSS plugin。报错原因:postcss-pxtorem版本太高,更改版本为5.1.1。npm install postcss-pxtorem@5.1.1

3、同时兼任pc和移动适配

通过配置两套不同路由和判断是否是移动端实现 1、写好两套路由 import Vue from “vue”; import VueRouter from “vue-router”;

Vue.use(VueRouter);

//默认路由 export const routes = [ { path: “/”, redirect: “/home”, }, ]; //pc端的路由 export const pcRoutes = [ { path: “/”, redirect: “/home”, }, { path: “/home”, name: “Home”, component: () => import(/* webpackChunkName: “about” / “…/views/home/pc.vue”), }, ]; //移动端设备路由 export const mobileRoutes = [ { path: “/”, redirect: “/home”, }, { path: “/home”, name: “Home”, component: () => import(/ webpackChunkName: “about” */ “…/views/home/mobile.vue”), }, ];

const createRouter = () => new VueRouter({ scrollBehavior: () => ({ y: 0 }), mode: “history”, routes: routes, });

const router = createRouter();

// Detail see: https://github.com/vuejs/vue-router/issues/1234#issuecomment-357941465 export function resetRouter() { const newRouter = createRouter(); router.matcher = newRouter.matcher; // reset router }

export default router;

2、封装一个判断是否是移动端的方法 // 判断设备是否为移动端的方法 export const isMobile = () => { return /(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i.test( navigator.userAgent ); };

3、src目录下创建一个init.js文件用于判断机型从而添加相应的路由 import router from “./router”; import { isMobile } from “./utils”; import { pcRoutes, mobileRoutes } from “./router”;

// 判断当前设备的型号从而改变当前路由 router.addRoute(isMobile() ? mobileRoutes[1] : pcRoutes[1]);

4、最后在vue项目的入口文件main.js文件中引入init.js。 import “./init.js”;

本文链接地址:https://www.jiuchutong.com/zhishi/285052.html 转载请保留说明!

上一篇:应付债券的会计帐务怎么处理?(应付债券的会计处理例题)

下一篇:cuda常见报错(cuda completed with errors)

  • 小米便签不小心删除了怎么恢复(小米便签不小心删除了怎么恢复超过30天)

    小米便签不小心删除了怎么恢复(小米便签不小心删除了怎么恢复超过30天)

  • 天猫小黑盒红包怎么领(天猫小黑盒红包改了)

    天猫小黑盒红包怎么领(天猫小黑盒红包改了)

  • 指定电子邮件地址是什么(指定电子邮件地址是什么意思)

    指定电子邮件地址是什么(指定电子邮件地址是什么意思)

  • 硬盘驱动器属于外存吗(硬盘驱动器属于主机吗)

    硬盘驱动器属于外存吗(硬盘驱动器属于主机吗)

  • QQ邮箱照片怎么以附件的形式上传(qq邮箱照片怎么打开)

    QQ邮箱照片怎么以附件的形式上传(qq邮箱照片怎么打开)

  • 手机边充边玩电量变少怎么解决(手机边充边玩电池有影响吗)

    手机边充边玩电量变少怎么解决(手机边充边玩电池有影响吗)

  • 三菱plc和西门子plc有什么区别(三菱plc和西门子plc编程一样吗)

    三菱plc和西门子plc有什么区别(三菱plc和西门子plc编程一样吗)

  • 美团属于阿里还是腾讯(美团属于阿里集团吗)

    美团属于阿里还是腾讯(美团属于阿里集团吗)

  • se基带是高通还是英特尔(se2020是什么基带)

    se基带是高通还是英特尔(se2020是什么基带)

  • qq群课堂回放一直显示生成中(qq群课堂视频回放)

    qq群课堂回放一直显示生成中(qq群课堂视频回放)

  • qq屏蔽和免打扰区别(qq消息免打扰和屏蔽对面知道吗)

    qq屏蔽和免打扰区别(qq消息免打扰和屏蔽对面知道吗)

  • 英特尔第十代上市时间(英特尔第十代上架时间)

    英特尔第十代上市时间(英特尔第十代上架时间)

  • 淘宝联盟退运费影响返利吗(申请退运费淘宝联盟还有返利吗)

    淘宝联盟退运费影响返利吗(申请退运费淘宝联盟还有返利吗)

  • 制冷量12000w是多少匹(制冷量12000w是多少匹一小时多少度电)

    制冷量12000w是多少匹(制冷量12000w是多少匹一小时多少度电)

  • 抖音里的照片怎么保存到手机(抖音里的照片怎么能删掉)

    抖音里的照片怎么保存到手机(抖音里的照片怎么能删掉)

  • 西瓜影音视频缓存在哪(西瓜影音视频缓存在哪里)

    西瓜影音视频缓存在哪(西瓜影音视频缓存在哪里)

  • 南方cass常用快捷命令(南方cass快捷键大全)

    南方cass常用快捷命令(南方cass快捷键大全)

  • 微信发视频慢怎么解决(微信发视频速度慢)

    微信发视频慢怎么解决(微信发视频速度慢)

  • mmef2ch/a是什么版本(mqaf2ae/a是什么版本)

    mmef2ch/a是什么版本(mqaf2ae/a是什么版本)

  • 趣步行的步数怎样和微信同步(趣步怎么刷步数)

    趣步行的步数怎样和微信同步(趣步怎么刷步数)

  • 安卓手机怎么看epub(安卓手机怎么看去过的位置)

    安卓手机怎么看epub(安卓手机怎么看去过的位置)

  • 什么软件可以给视频加边框(什么软件可以给视频加字幕)

    什么软件可以给视频加边框(什么软件可以给视频加字幕)

  • fch32.exe是什么进程 作用是什么 fch32进程查询(电脑上fci是什么文件)

    fch32.exe是什么进程 作用是什么 fch32进程查询(电脑上fci是什么文件)

  • 【bug】Failed at the node-sass@4.14.1 postinstall script(终于圆满解决)(but all failed)

    【bug】Failed at the node-sass@4.14.1 postinstall script(终于圆满解决)(but all failed)

  • yolov5_reid【附代码,行人重识别,可做跨视频人员检测】(yolov5 libtorch)

    yolov5_reid【附代码,行人重识别,可做跨视频人员检测】(yolov5 libtorch)

  • 多缴纳的附加税可以以后期间抵扣吗
  • 个人所得税手续费返还要交企业所得税吗
  • 开发商交的税费是什么
  • 盖了骑缝章的合同怎么写
  • 人力资源行业税务政策
  • 个税手续费返还比例
  • 电子税务局增值税发票系统
  • 主管盾和制单盾的区别
  • 怎样查是否为一类银行卡
  • 以前年度少计提费用
  • 小企业销售商品因批量原因给予客户的商业折扣
  • 航空货运单可以由谁来填写
  • 年终奖金怎么发放
  • 不付供应商尾款了怎么清账
  • 商品编码选错税务会直接罚款吗?
  • 私立医院增值税税率是多少
  • 跨地区经营建筑企业预缴增值税可以先开票后预缴吗
  • 税收分类编码如何填写
  • 清包工程增值税税率
  • 物业代收水电费,业主不交怎么办
  • 个人出租商铺要交城镇土地使用税吗
  • 未确认融资费用摊销额怎么计算
  • 会计速动比率计算公式
  • 备查账要如何设置?
  • 软件进项税额分摊方式
  • 红字负数发票可以抵扣吗
  • 联想笔记本bios密码忘记了怎么清除
  • 联想g40开机屏幕一直闪
  • mac怎么访问路径
  • 怎样获得win11
  • 忘记用户登录密码怎么办
  • 原材料盘亏计入
  • php输出当月日历
  • 计提长期待摊费用的会计分录
  • OS X Yosemite系统怎么制作u盘安装盘
  • 长期债券投资减少是计入贷方吗?
  • 无形资产摊销的会计及账务处理
  • 国产设备投资抵免企业所得税
  • 戈佐西餐厅
  • 漏洞 标准
  • 未交土地出让金的处罚
  • 社保退工伤保险怎样做分录
  • yolo算法百度百科
  • 命令default
  • 研发支出资本化支出属于什么科目
  • 专项应付款能转回来吗
  • php打不开网页
  • 施工单位奖金分配方案
  • 辅助生产车间照明费用计入什么科目
  • 其他资本公积主要包括
  • 经营性流动资产减去经营性流动负债
  • 进项税额转出的所有会计分录
  • 汽车折旧会计凭证怎么做
  • 什么情况下需要异地预缴增值税
  • 服务行业收入会增加吗
  • 增值税销项税率是多少
  • 机动车销售折让红字信息表
  • 工业用电交税怎么算
  • 纳税人将外购的货物用于非应税项目
  • etc发票当天可以打印吗
  • 办公家具生意怎么做
  • 企业大额融资需要什么资料
  • 付外汇代缴税费
  • sqlserver数据库恢复挂起状态
  • 快速清理朋友圈的方法
  • win2003开机蓝屏
  • win打开本地策略
  • centos san
  • ubuntu sshserver
  • 苹果mac浏览器
  • win7文件无法删除需要权限
  • linux根文件系统直接解压到硬盘
  • win7电脑显示器颜色不正常怎么办
  • PHPMyAdmin 2.7.0-pl1下载
  • linux awk nr
  • 安卓布局优化
  • python的threadpool
  • jquery操作样式
  • 开票项目信息分类查询
  • 税务税率9个点怎么算
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设