前端理论面试-遇到问题

vue开发中遇到的问题
  1. 不要把 v-if 和 v-for 同时用在同一个元素上
    数据重复渲染,内容错乱。
    因为v-for指令的优先级高于v-if当它们处于同一节点。v-for 的优先级比 v-if 更高,这意味着 v-if 将分别重复运行于每个 v-for 循环中。
    2.x 版本中在一个元素上同时使用 v-if 和 v-for 时,v-for 会优先作用。
    3.x 版本中 v-if 总是优先于 v-for 生效。=(3.x修复 v-if 和 v-for 同时用在同一个元素的问题)
个人经验记录,无需阅读。
一.说一说项目遇到的问题,然后怎么解决?
  1. 小程序,微信端嵌入HTML网页跳转链接URL参数丢失问题。解决方法:对URL进行encodeURIComponent()处理。

  2. 请求服务:资源加载无效资源
    上传视频资源,后台转码,有时候转码成功,有时候转码失败,
    各种转码失败,后台转码脚本异步,导致转码成功,而视频为空。
    小程序:
    问题:图片验证码问题。
    描述:图片验证码登录,后端判断验证不成功。
    很多开发这都是用小程序的授权登录,而我这项目中需要用账号密码登录,同时使用图片验证码去校验,后端是PHP返回的图片流,直接插入到wxml中的image.src里面直接显示,图片能清楚显示,无怎么提交后端都返回验证码错误,狗血的是我用postman测试一直能成功登录,放到小程序怎么样都不行。
    和后端交流问题,他就截图postman,表示后台系统程序没有问题,直接把锅丢给前端。
    小程序端,请求正常,请求数据格式正常,验证码输入正确,后台能返回校验情况,我也真找不到问题。我这边只好测试请求数据的格式,json,form什么的格式都测试了一遍,都不行。图片放到最大,确保验证输入一定正确,无奈,页面上的操作无法解决请求的问题。
    再和后端沟通,后端确实有点不耐烦,我叫他返回base64图片试试看,他却说postman请求成功,还用PC端后台登录也是这样用都可以,就不给我返回base64了。
    我只好自己瞎搞一下了,拿着请求格式,图片验证码不能成功的问题,去百度,谷歌,360,知乎,博客,前端的群,一起开发的朋友同事,问了一边,翻了一遍,然而都没有对应的问题解决情况,又回头看了小程序请求文档,最终懂没有在这个方向解决这个问题。
    为了不影响开发进度,这些纠结解决不了的问题也只好放在一边了。
    利用晚上,周末的时间再去找问题解决方法。
    解决问题要点:转换问题的思路,了解实现的根本原理。
    PC端提交验证图片验证码无误,这个验证码的校验过程是怎么样的?作为前端,很多人都用图片验证码,但估计都不知道这个直接插入html中的验证码,到底是怎么样跟后台校验的。原来这个验证码获取的时候,浏览器会主动保持['Set-Cookie']里面的值PHPSESSID,这个值就是后端加密的图片验证码数字的字符串,在cookie本地,然后提交数据验证的时候后端再取cookie的PHPSESSID解密,校验提交的验证码。是这样的流程。然后上小程序论坛,发现小程序根本不会主动储存['Set-Cookie'],所以后端一直都应该拿不到PHPSESSID,然后的校验肯定是不能成功的。
    然后我要手动存储['Set-Cookie'],url就是图片路径,我前端怎么能手动存储['Set-Cookie']?下载图片,去请求中的取header['Set-Cookie'],然后保存起来,提交登录验证把保存的header带上,然后验证成功,问题解决了。
    花了好几天的时间
    总结:
    1.错误思路,方向错误,怎么改都是错。
    2.后端不配合,postman请求成功,就不帮忙调试问题了,帮忙调试一下,就知道没有PHPSESSID,那就可以直接知道问题的根处,解决问题的时间可以缩短90%;
    3.转换思路,了解原理,配合调试。
    4.一般情况,叫后端都可以打印日志看看就好,像我这样搞,都是逼的。

二,你会用笔记本打开网页文件吗?

千万不要使用Windows自带的记事本编辑任何文本文件。原因是Microsoft开发记事本的团队使用了一个非常弱智的行为来保存UTF-8编码的文件,他们自作聪明地在每个文件开头添加了0xefbbbf(十六进制)的字符,你会遇到很多不可思议的问题,比如,网页第一行可能会显示一个“?”,明明正确的程序一编译就报语法错误,等等,都是由记事本的弱智行为带来的。

三,火狐上多行文本超出显示省略号

多行文本超出显示省略号

p{
  overflow:hidden;  // 超出部分隐藏 
  text-overflow:ellipsis;  // 超出部分显示省略号 
  display:-webkit-box;  // 将对象作为弹性伸缩盒子模型显示 
  -webkit-box-orient:vertical;  // 规定框的子元素应该被水平或垂直排列 
  -webkit-box-clamp:2  // 为不规范属性,表示展示几行 
}

补充:white-space,它主要是用来处理元素内文本的空白符、换行符以及是否允许折行。可选值包括normal(默认)、pre、nowrap、pre-wrap、pre-line。
word-wrap,是用来标明是否允许浏览器在单词内进行断句,为了防止当一个字符串太长而找不到它的自然断句点时产生溢出现象。可选值break-word
word-break,用来标明怎样进行单词内的断句。默认值normal,可选值为break-all,keep-all。


在火狐上,-webkit-box-clamp:2不生效

@-moz-documentc url-prefix(){ 
p{ 
position: relative; 
line-height: 20px; 
max-height: 40px;//设置最大高度,加上overflowhidden,正好是两行,使超出部分隐藏 
overflow: hidden;
 }
 p::after{ 
content: "..."; 
position: absolute; 
bottom: 0; right: 0; 
padding-left: 40px;//以上三个属性,可以后续调整,看要把...放在哪个位置 
background: -webkit-linear-gradient(left, transparent, #fff 55%); 
background: -o-linear-gradient(right, transparent, #fff 55%); 
background: -moz-linear-gradient(right, transparent, #fff 55%); 
background: linear-gradient(to right, transparent, #fff 55%);//背景色可写成渐变也可写成一样的颜色 
} 
}

原理是自己写一个… 放在最后一行的末尾。

四,在iOS上,输入框默认有内部阴影,但无法使用 box-shadow 来清除,如果不需要阴影,可以这样关闭:
-webkit-appearance: none;

禁止保存或拷贝图像

img{-webkit-touch-callout: none;}

设置input里面placeholder字体的大小

::-webkit-input-placeholder{ font-size:10pt;}

快速回弹滚动,ios,overflow:auto,时系统效果

-webkit-overflow-scrolling: touch;
五,实际开发中也经常碰到 行高不精确的问题

设置line-height属性让文字垂直居中,发现在PC端肉眼观察是居中的,但是在移动端(Android)上总是发现文字偏上,
说是line-height对一部分Android手机不起作用,有自己默认的行高,默认行高为22px

line-height:normal; 
padding:10px 0; 

改用padding,为好。

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

推荐阅读更多精彩内容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,450评论 1 45
  • 作者:晚晴幽草轩www.jeffjade.com/2016/10/31/115-summary-of-cookie...
    饥人谷_Dylan阅读 1,224评论 0 51
  • 背景在HTTP协议的定义中,采用了一种机制来记录客户端和服务器端交互的信息,这种机制被称为cookie,cooki...
    时芥蓝阅读 2,357评论 1 17
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,092评论 1 32
  • 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Se...
    chinariver阅读 5,602评论 1 49