传送门:  https://blog.csdn.net/zjw0742/article/details/79337336…
一些比较小的H5页面,我觉得全没有必要一定要使用框架的,比如vue和react之类的,我觉得原生的js,html5也可以写好移动端. 最近刚好要赶10多个h5页面,适配移动端的,各种手机型号都要适配,笔者想起了自己的以前写过的一个转换小工具, 大家可以看之前我的文章和我一起使用postcss+gulp进行vw单位的移动端的适配 老实说,笔者根据之前的记录,根本就没有还原出小工具,实在是汗颜.不过,在笔者实在无法精确还原工具之后,笔者找到了之前练习的demo. 笔者一下子就搞定了. 先给大家看下项…
随着iphoneX的出现,新的一轮适配大法应该又出现了吧?不论是使用flex布局或者媒体查询,好似都不能完全解决新加的刘海带来的适配问题. 但是有一个单位vw就神奇的解决了这个问题.vw和vh是相对于视口(viewport)的宽度和高度 ,1vw等于视口宽度(viewport width)的百分之一,也就是说100vw就是视口的宽度: 1vh等于视口高度(viewport height)的百分之一.做移动端适配的时候,试想想,也就是将手机的视口进行高密度的细分,随着屏幕的改变,1vw所代表的视口…
有个朋友问我在vue项目怎么做rem适配,我工作中都是用的dva,但是我感觉道理都是一样的,换汤不换药.配完就顺手写下来吧! 需要安装两个插件库 lib-flexible和px2rem-loader yarn add lib-flexible yarn add px2rem-loader flexible.js是淘宝官方H5移动适应解决方案.它做了三件事: 1.动态改写标签 2.给<html>元素添加data-dpr属性,并且动态改写data-dpr的值 3.给<html>元素添加…
今天在做公交的时候没干,用手机看看文章,偶然发现了一个关于Vue优化seo的文章,我先是在Vue的官方文档看了一篇关于Vue做SEO优化的文章. 上面提到了nuxt.js这个框架,这个框架我做过一个小项目,确实是可以做服务端渲染,但是这个需要在服务器启动服务,当时我是用的docker,然后用node+nginx做了个容器,然后用pm2做进程守护. 后面我拿原来的Vue项目做了一个对比发现确实是加载速度要比原来的快很多. 后面我又发现有个预渲prerender-spa-plugin染的东西,然后早…
1, 首先判断设备:在main.js里面写 // vue原型挂载 - 是否PC端 if (/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)) { Vue.prototype.$pc = false hostConfig.vconsole && new VConsole() } else { Vue.prototype.$pc = true let winWidth = document.documentEle…
半年木有更新博客了... 前段时间一直在学习vue,开始记录一下遇到的问题吧 这篇文章主要是总结一下vue中使用less或者sass的方法,以less为例(style.less) 主要是两种 1.对于写在vue文件中的less: 所有vue文件的<style lang="less"></style>,会被vue-loader处理编译到一个css文件中,最终自动通过link标签写入index.html(在vue-loader.conf.js中配置) <sty…
当我们在文件中,如果是vue页面中的内部跳转,可以用this.$router.push()实现,但是如果我们还用这种方法跳到外部链接,就会报错,我们一看链接的路径,原来是我们的外部链接前面加上了http://localhost:8080/#/这一串导致跳转出现问题,那么我们如何跳转到外部链接呢,我们只需用 window.location.href = ‘url’来实现,具体代码如下: <button class="bank-btn" @click="jump(item.…
1.在config文件中修改index.js proxyTable: { "/api":{ target: 'https://www.baidu.com/muc/',//你需要跨域的url changeOrigin: true, pathRewrite: { '^/api': '/' } } }, 2.在config文件中修改dev.env.js module.exports = merge(prodEnv, {NODE_ENV: '"development"',A…
Vue项目搭建流程 以及 目录结构构建 一个小的Vue项目, 基于微信浏览器的移动端, 做了这么多的练习项目, 这一次准备记录下构建的过程, 以方便以后的调高效率 环境准备 操作系统 我的 windows 7 操作系统, 如果是mac系统的话, 希望我可以在最短的时间内可以进行尝试. 好期待.. 软件环境 Node环境, 是必备环境, 包括模拟服务器的搭建, 到webpack的自动打包. 直接在官网进行下载, 并一步步安装即可 命令行工具, 可以直接使用cmd, 这里使用了一个Git Bash…
假设你的项目由vue-cli初始化 (e.g. vue init webpack my-project). 在你的vue项目目录下执行: npm install jquery --save-dev 打开 build/webpack.base.conf.js 文件并添加 plugins: module.exports = { plugins: [ new webpack.ProvidePlugin({ $: 'jquery', jquery: 'jquery', 'window.jQuery':…
https://www.w3cplus.com/mobile/vw-layout-in-vue.html 有关于移动端的适配布局一直以来都是众说纷纭,对应的解决方案也是有很多种.在<使用Flexible实现手淘H5页面的终端适配>提出了Flexible的布局方案,随着viewport单位越来越受到众多浏览器的支持,因此在<再聊移动端页面的适配>一文中提出了vw来做移动端的适配问题.到目前为止不管是哪一种方案,都还存在一定的缺陷.言外之意,还没有哪一个方案是完美的. 事实上真的不完美…
有关于移动端的适配布局一直以来都是众说纷纭,对应的解决方案也是有很多种.在<使用Flexible实现手淘H5页面的终端适配>提出了Flexible的布局方案,随着viewport单位越来越受到众多浏览器的支持,因此在<再聊移动端页面的适配>一文中提出了vw来做移动端的适配问题.到目前为止不管是哪一种方案,都还存在一定的缺陷.言外之意,还没有哪一个方案是完美的. 事实上真的不完美?其实不然.最近为了新项目中能更完美的使用vw来做移动端的适配.探讨出一种能解决不兼容viewport单位…
有关于移动端的适配布局一直以来都是众说纷纭,对应的解决方案也是有很多种.在<使用Flexible实现手淘H5页面的终端适配>提出了Flexible的布局方案,随着viewport单位越来越受到众多浏览器的支持,因此在<再聊移动端页面的适配>一文中提出了vw来做移动端的适配问题.到目前为止不管是哪一种方案,都还存在一定的缺陷.言外之意,还没有哪一个方案是完美的. 事实上真的不完美?其实不然.最近为了新项目中能更完美的使用vw来做移动端的适配.探讨出一种能解决不兼容viewport单位…
我们在vue移动端项目中的适配一般都采用rem,但是rem也不是能兼容所有的终端. 随着viewport单位越来越受到众多浏览器的支持,下面将简单介绍怎么实现vw的兼容问题,用vw代替rem 当我们采用vue-cli脚手架搭建完项目,安装所有依赖包之后,用npm run dev启动后,在根目录有一个 .postcssrc.js 文件,文件结构如下: vue-cli默认已经安装以上三个插件: postcss-import:相关配置可以点击这里.主要功有是解决@import引入路径问题.使用这个插件…
有关于移动端的适配布局一直以来都是众说纷纭,对应的解决方案也是有很多种.在< 使用Flexible实现手淘H5页面的终端适配>提出了Flexible的布局方案,随着 viewport 单位越来越受到众多浏览器的支持,因此在< 再聊移动端页面的适配>一文中提出了vw 来做移动端的适配问题.到目前为止不管是哪一种方案,都还存在一定的缺陷.言外之意,还没有哪一个方案是完美的. 事实上真的不完美?其实不然.最近为了新项目中能更完美的使用 vw 来做移动端的适配.探讨出一种能解决不兼容 vi…
推荐看看大漠老师的文章,非常的有收获 如何在Vue项目中使用vw实现移动端适配 1.首先在项目中安装依赖 npm i postcss-aspect-ratio-mini postcss-px-to-viewport postcss-write-svg postcss-cssnext postcss-viewport-units cssnano --S 2.修改.postcssrc.js的配置 module.exports = { "plugins": { "postcss-i…
近些年移动端的强势崛起,导致移动端适配越来越重要,个人之前一直使用的是rem进行适配,但是发现并不是非常完美,给力的是大漠老师写了一篇<如何在Vue项目中使用vw实现移动端适配>,比较完美的解决了适配问题,下面是自己动手搭建后的一些整理. 创建项目 //vue-cli 3.0+ 版本 vue init webpack vue-vw-demo cd vue-vw-demo 安装必要插件 npm i postcss-aspect-ratio-mini postcss-px-to-viewport…
安装 flexible和 postcss-px2rem(命令行安装) npm install lib-flexible --save npm install postcss-px2rem --save lexible会为页面根据屏幕自动添加<meta name='viewport' >标签,动态控制initial-scale,maximum-scale,minimum-scale等属性的值. 在Galaxy S III手机上 在iphone6/7/8 postcss-px2rem会将px转换为…
1,安装 flexible和 postcss-px2rem(命令行安装) npm install lib-flexible --save npm install postcss-px2rem --save 简要介绍这两个包的用途: flexible会为页面根据屏幕自动添加<meta name='viewport' >标签,动态控制initial-scale,maximum-scale,minimum-scale等属性的值. 例如在Galaxy S III: 例如在iphone6/7/8: po…
Vue将px转化为rem适配移动端 1.下载lib-flexible我使用的是vue-cli+webpack,所以是通过npm来安装的npm i lib-flexible --save 2.引入lib-flexible在main.js中引入lib-flexibleimport 'lib-flexible/flexible' 3.设置meta标签通过meta标签,设置设备宽度以及缩放比例<meta name="viewport" content="width=device…
移动手机版要求我们在制作嵌入h5的时候去适配不同的手机.适配有多重模式,有flex.百分比等.字体大小的控制也有px.百分比.rem等单位,webpack中 px转rem. vue项目中postcss-pxtorem的使用及webpack中的配置 css中单位px和em,rem的区别 1 安装依赖包   npm install postcss-pxtorem --save-dev 2 创建 .postcss.js文件,做webpack相关配置 配置项 autoprefixer: 添加浏览器前缀…
最近在写移动端项目,就想用lib-flexable,px2rem来进行适配,把px转换成rem但是也用到了第三方UI组件库vux,把这个引入发现一个问题就是vux的组件都缩小了,在网上找不到答案,最后在一个vue开发群里找到了解决的方法,目前的处理方法是将vux组件中px转化为PX,避免被转成rem 可以参考一下这篇文章vue中的适配:px2rem 在webpack.base.conf.js中 vuxLoader中配置以下代码 { name: 'vux-ui' }, { name: 'after…
第一步:安装Node 1.打开NodeJS的官网,下载和自己系统相配的NodeJS的安装程序,包括32位还是64位一定要选择好,否则会出现安装问题. 下载地址:https://nodejs.org/en/download/   我选择的是Window版本64位的安装程序,也有MAC平台的安装程序. 下载完成,如图:   2.接下来就是安装了,安装很简单,直接下一步下一步就可以,但是我也把流程记录下来,给第一次看本教程的人有一个大概的了解. 双击安装文件,如图:   3.点击下一步,选择同意协议,…
起因 前公司商城App项目使用的是H5开发,有微信公众号.Ios和Android三个版本,H5版本是自己写的一套框架,已经用了有些年头了,承载不下不断涌现出的新需求.而Ios和Android端通过webview加载h5文件显示,App的原生功能和H5交互的代码写得有些凌乱,在我接手项目后老板完全没给重构的时间,所以只能在做新功能的时候顺手一点点的重构.后来要做一个与原先的商城相对独立的新商城,而且新商城的入口放在老商城中.因为时间紧任务重,使用React Native或者weex的话需要将原项目…
使用场景:有适配pc端改为适配pc端和移动端,使用2套css 代码实现App.vue created: function () { if(document.documentElement.clientWidth > 640){ require('./style/index.scss'); this.plaform = 'pc'; }else{ require('./style/mobile.scss'); this.plaform = 'mobile'; } 注意: 为2套css分别指定不同的父…
px: 是网页设计中最常用的单位,然而1px到底是多大长,恐怕没有人能回答上来 它用来表示屏幕设备物理上能显示的最小的一个点,这个点不是固定宽度的,不同设备上点的长度.比例有可能会不同. 假设:你现在用的显示器上1px宽=1毫米,但我用的显示器1px宽=两毫米,那么你定义一个div宽度为100px,你显示器上看这个div是10厘米,我显示器上看是20厘米.另外一个px点的长度不一定是1:1的正方形,有的设备上长度比是不一样的. 更多px信息点此博客. px的兼容性:需要注意的是谷歌浏览器最小可以…
bug点,这个页面设置100%(100vw和100vh).页面出现抖动. 经过一番检察,原因出现在,vue项目自动添加的一个div上.就是body里的最后一个.如果选中这个元素,右键删除它.页面就不会抖动了. 说不定,这个元素还有什么用,所以不考虑有js删除.后来想到把他设置成position为fixed.让他 脱离文本流. 一看最外层的div没有class和id不好选中.但是发现子元素有,所以我们把子元素都设置成fixed就行了. 只要在你的重置样式里,加上这段css就可以了. #trans-…
vue项目的默认端口为8080,有时候处于某些原因会造成端口号的冲突,因此需要我们适当的更改其端口号来解决问题,将上图中的port更改为合适的端口号就可以,但是需要注意的是浏览器的安全限制端口号详情见:https://www.cnblogs.com/bgwhite/p/9543177.html…
1.目录结构(vue项目,但是并不局限于vue) 2.首先定义一个mixin.styl文件 border-1px($color) position: relative &:after display: blcok position: absolute left: 0 bottom: 0 width: 100% border-top: 1px solid $color content: ' ' 3.再定义一个统一处理dpr的stylus文件,base.styl //这里我们使用@media媒介查询…