js
生活在于玩
这个作者很懒,什么都没留下…
展开
-
对于组件数据无变化,但是想要重新渲染的问题解决方法
在写业务的时候,经常有这样的困扰,当我们需要某个组件进行重新渲染时,但是由于本组件的状态包括state或props数据无变化时,组件是不会重新渲染的,那么我们如何解决这个问题呢?这里可以用修改本组件的key来进行强制进行重新渲染,这是为什么呢?那就需要从组件更新时的dom diff算法说起了,dom diff在更新时会比较前后两个key,如果两个key不一样,则可以确定组件发生了变化,需要重新进行刷新,对于diff算法的细节,大家可以去深入了解。大家有什么更好的办法也可以评论交流。...原创 2021-12-20 10:41:19 · 364 阅读 · 0 评论 -
在安卓手机上出现当弹起手机输入框时,导致手机下方出现白屏或者底部按钮被挤上来
在安卓手机上出现当弹起手机输入框时,导致手机下方出现白屏或者底部按钮被挤上来这个可能是因为当输入框弹起的时候,页面会重新计算高度(高度变小了),所以导致按钮被挤上来了。解决方法: 可以在页面加载完之后,比如在vue中就是在mounted钩子中,将根元素的高度设置为页面文档的高度代码例 document.getElementsByClassName(“根元素”)[0].style.heigh...原创 2019-11-05 17:23:02 · 1140 阅读 · 0 评论 -
关于async await 和promise
promise是es6出来的用来解决异步回调问题的新的api, 通过promise我们会发现 确实会比回调函数写起来要方便很多,也可以用来进行异步转同步的作用,但是当我用了 async 和 await之后发现,这个写法更加的方便,是用同步的方式在写异步代码(只需要将await放在上面就行了) 而且也不用 .then() 将代码包进去,确实方便不少,看起来更加简洁,但问题是,只要放在上面,他就会阻止...原创 2019-07-23 16:43:27 · 156 阅读 · 0 评论