主流小程序开发流程

内容列表

开发小程序有很多问题特此记录一下~~~

小程序开发(移动端开发)兼容注意事项:

  1. ios不兼容yyyy-MM-dd HH:mm:ss这种时间格式,需要将-替换成/,在安卓下两种格式都支持。

  2. 使用window.location.reload()方法刷新页面,在安卓下无效。

  3. 正常情况下使用window.location.replace()方法跳转页面时会覆盖当前页面而不会生成新的history记录,但是在安卓下依然会生成history记录。

  4. ios中,父元素设置border-radius和overflow:hidden实现圆角。如果此时子元素使用了transform属性会导致父元素的圆角失效。

  5. 小程序中使用web-view打开pdf, IOS 可以正常打开,Android 打开为空白;

  6. 微信小程序分包加载,需要注意单个分包或者主包大小不要超过2m

  7. uni-app的坑,尤其是弹窗官方提供的uni-popup,存在ref引用销毁问题,导致点击多次无法正常绘制了,需要自己写弹窗逻辑(能不用官方的插件尽量不用,有很多性能问题都是官方插件引起,比如日期控件或者弹窗控件都会产城一些未知bug)

  8. 安卓与ios在很多地方api不能共用,比如数字转换添加千分位这个问题,安卓就不支持(JS内置 API (toLocaleString),ios是支持的,但是在安卓的浏览器内核中不存在这个api无法正常转译),具体可以看链接:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString

虚拟滚动的实现思路

基本思路就是动态渲染一个div中的元素组件一般是4-10个模块,实现了数据量200条数据但是只需要10个模块

(1)给需要滚动的组件添加padding-top与padding-bottom,然后分别计算这两个相对的像素值

(2)或者父元素使用绝对定位,其中动态的div使用相对定位,然后使用两栏或者三栏布局使用卡片式渲染,不断推动向下渲染即可

(3)难点有二:用户快速滑动可能也会导致渲染白屏,优化体验可以考虑使用降低用户的滑动速度或者是增加更多的渲染模块

相关

前端工程化:对于构建工具链的简单思考

2022-08-01

前端工程化是一个值得了解的方向,从软件开发、测试到部署上线整个环节的深入,可以对软件工程有一个更深刻的理解,对于前端来说,构建工具链是工程化中重要的一环,这里对这么多年接触过得工具做一个简单的总结思考。

了解更多

开发web中遇到的一些兼容问题汇总

2025-06-20

在使用vue或者react新时代框架开发前端页面的时候总会遇到这样或者那样的问题

了解更多

Linux-常用 Shell 命令

2018-02-21

Linux 是一个优秀的开发环境,大多数服务器都在上面部署。作为一个程序员,熟悉Linux 系统的常用操作也是很必要的。在 linux 内核外,shell 提供了我们程序员(用户)与内核之间的交互媒介,shell 可以说是一个命令解释器,当然它也负责将内核输出信息翻译给程序员。

了解更多