移动端工作心得

1.移动端适配问题

在这里使用的是手淘的flexible,直接把这个文件拷贝进项目,并在页面渲染之前使用即可。
我们适配主要是涉及使用px的时候,比如width/height/margin/padding等,所以我们使用sass 做了一个px转成rem,如下

@function px2rem($px, $base-font-size: 75px) {
    @if (unitless($px)) {
        @warn "Assuming #{$px} to be in pixels, attempting to convert it into pixels for you";
        @return px2rem($px + 0px); // That may fail.
    } @else if (unit($px) == rem) {
        @return $px;
    }
    @return ($px / $base-font-size) * 1rem;
}
//使用
height: px2rem(80px);

那个$base-font-size可根据UI给的图而定,我们用的750的,所以就定为75px
对于字体:

@mixin font-dpr($font-size) {
    font-size: $font-size;
    [data-dpr="2"] & {
        font-size: $font-size * 2;
    }
    [data-dpr="3"] & {
        font-size: $font-size * 3;
    }
}
//使用
@include font-dpr(14px);

这里就是针对不同dpr设备做一个分类。
对于居中:

//使用前将父元素的宽高设置好,自元素引入,会自动填充
@mixin center{
    width:100%;
    height:100%;
    display:flex;
    align-items: center;
    justify-content: center;
}
@mixin centerY{
    width:100%;
    height:100%;
    display:flex;
    align-items: center;
}
@mixin centerX{
    width:100%;
    height:100%;
    display:flex;
    justify-content: center;
}

也是使用flex来实现,要注意的就是元素的宽高需要自己另外设置,不然就是根据填充内容定。

2.js工具

深拷贝
JSON.parse(JSON.stringify(data));

用这个基本的对象数组都可以完美实现,但是要注意如果元素有函数,那么会转成undefined,但是对于基本业务来说够用了,至于有函数怎么转暂时还没做研究(大概是懒)。

转化数字为千分位
function toThousands(number) {
        var number = String(number).split('.');
        var num = (number[0] || 0).toString(), result = '';
        while (num.length > 3) {
            result = ',' + num.slice(-3) + result;
            num = num.slice(0, num.length - 3);
        }
        if (num) { result = num + result; }
        return result+(number[1]?('.'+number[1]):'');
    }

有小数也可以

使用storage

我们经常会使用storage帮我们去存储一些信息,但是最好在存储的时候加密,最起码用base64加密

vue-router

1.在使用路由跳转尽量不要使用push去改变路由,尤其移动端页面,跳来跳去,路由对战堆栈就会有很多,使用返回按钮就会很烦,往往按了很多次都跳不出去,建议使用replace。
2.暂时未找到路由回退的监听。
3.在页面监听页面路由变化时可以监听$route, 相信有一部分人都没用过。

 watch:{
            '$route'(newVal, oldVal){
                if(newVal.matched[0].name == "main"){
                    this.currentTab = newVal.path;
                }
            }
        },
vuex使用

只说一下注意点吧,它只能作为数据临时保存,相当于搞了一个全局变量,所以一些请求接口用的公共数据还是要通过storage保存,因为刷新页面vuex中的数据会重制。
对于一些简单的应用,没必要用vuex,直接用eventBus就可以解决非父子组件通信。

vue中model-view

对于对象或者数组类型的数据,我们会发现有时候改变了但是页面没有渲染出来,这是因为无法监测到数据变化,自然也就不回重新渲染,可以使用以下方法:

1.this.$set()//官方提供
2.数组的一些可以改变的方法,push,pop,shift,unshift,splice等
深度监控
watch:{
            goodsList:{
                deep:true,//表示深度监控
                immediate: true,//将立即以表达式的当前值触发回调
                handler: function(val, oldVal){
                   
                    }
                }
            }
        }
图片资源

当使用img标签,并且想变量来表示url加载本地图片,一定要用require(url),否则加载不到。
关于mint-ui的一些坑,大部分都可以在官方的issue中得到解决。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,133评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,682评论 3 390
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,784评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,508评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,603评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,607评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,604评论 3 415
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,359评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,805评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,121评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,280评论 1 344
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,959评论 5 339
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,588评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,206评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,442评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,193评论 2 367
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,144评论 2 352

推荐阅读更多精彩内容

  • 去一家独特的书店,看上两三个小时书;找一个自己喜欢的艺术馆,恰好它又坐立在湖边,恰好他们提供下午茶,抱起一本在书店...
    枫子的信阅读 267评论 0 0
  • 2.17.08.23 星期三 台风 农机四月初二 今天上午带宝宝楼下溜达了一圈,上楼吃了点早饭宝宝就睡着了,等宝宝...
    小幸福vs茹萍阅读 171评论 0 0
  • 因为费孝通老师的乡土中国,喜欢上了看研究农村问题这一类的书籍。因为阎云翔老师的《中国社会的个体化》而开始关注田野调...
    hhf素阅读 454评论 2 2