总结
许久没写了,记性也越来越差了;今天来写一下这一周工作中涉及到的一些问题及知识补充,记录一下!
1.删除当前目录下的node_modules命令 rimraf node_modules 安装rimraf:npm i rimraf -g
2.typeof(arr)得到的是object,如果要返回数组的话用Object.prototype.toString.call(arr) 返回[object array]
3.实现动画显示隐藏,但是transition不支持display属性,解决俩种方法:一种是opacity和visibility,但是页面上就会有留白,另一种是通过设置max-height来进行过渡;
https://www.cnblogs.com/zhd09/p/14095629.html
4.页面栈 问题:点击回退按钮的时候页面出现2次,解决:页面回退使用wx.navigateBack({delta:1})
https://developers.weixin.qq.com/miniprogram/dev/framework/app-service/route.html
5.浏览器解析css选择器是从右往左的,从右往左的匹配在第一步就筛选了大量不符合条件的节点,避免许多无效匹配;而从左往右的匹配规则 性能浪费在了失败的查找上面。(因为它是一级一级往上找的,我的同事告诉我他嵌套最多嵌套三层,这样利于性能?我还是不懂啊,意思使用scss的时候都要分开 不能一直嵌套到底了?希望路过的小伙伴可以解答一下)
6.vue中css样式穿透问题 这个经常遇到。在修改组件样式的时候出现了没有效果问题;解决 :选择器前加>>>或/deep/或::v-deep,建议用/deep/
7.dpr(设备像素比) 物理像素/逻辑像素(px)=设备像素比
8.rem 跟元素的font-size决定,vwvh :vw宽vh高,把屏幕分为100份,1vw就等于屏幕宽的1%,所以屏幕宽等于100vw
9.
// 转换成"北 京 市" let area = [ { label: '北', value: '110000' }, { label: '京', value: '110000' }, { label: '市', value: '110000' } ] //第一种 var str = '' area.forEach((item, index, a) => { str += item.label + " " }) document.write(str); // 第二种 arr=area.map(item=>{ return item.label }).toString().replace(/,/g,' ') document.write(arr); //打印对应的key和value var arr = [{ 'max(`attr_id`)': 4 }] var arrkey=Object.keys(arr[0])[0] var arrval=Object.values(arr[0])[0]
10.{path:"/*",redirect:"/home"} 路由重定向,无论你在地址栏输入访问的是/xxx,都能自动跳转到home页面
11.keep-alive 缓存 router-view
12.git https://www.cnblogs.com/zhd09/p/14130309.html
13.npm 和 npx
npm是node.js的软件包管理器,npm自身不能去运行任何包,如果要使用npm运行软件包,需要在package.json文件中指定该软件包
npx是执行node软件包的工具,自动安装尚未安装的npm软件包;默认情况下,首先会去检查是否单曲路径下(即在项目中)是否存在要执行的包;若存在对应的包,则执行它;若不存在,则认为路径下不存在该包,则npx会去安装最新版本的包,并且去执行它。使用 npx 去执行包时,会保证使用的是最新的构建工具,无需担心包版本升级的问题
参考:http://codingdict.com/questions/12155
14.package-lock.json 锁包 锁定安装时的包的版本号 npm install
15.严格模式与非严格模式
同样的代码,在"严格模式"中,可能会有不一样的运行结果;一些在"正常模式"下可以运行的语句,在"严格模式"下将不能运行。
JavaScript 严格模式(strict mode)即在严格的条件下运行。使用"use strict"指令开启严格模式,使制定代码在严格条件下执行
严格模式:使用未定义的变量或变量会报错、不允许删除变量或对象、不允许删除函数、不允许变量重名、不允许使用转义字符、不允许对只读属性赋值、禁止this关键字指向全局对象。
非严格模式:可以使用delete删除已经声明的变量、变量可以不进行声明,可直接赋值、this指向全局对象window
为什么使用严格模式:
消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;
消除代码运行的一些不安全之处,保证代码运行的安全;
提高编译器效率,增加运行速度;
为未来新版本的Javascript做好铺垫
"严格模式"体现了Javascript更合理、更安全、更严谨的发展方向。
参考:菜鸟教程 https://www.runoob.com/js/js-strict.html
文中不足还请各位看到文章的小伙伴指正一下!
加油,打工人!

浙公网安备 33010602011771号