前言 :uniapp开发微信小程序,我们在开发过程中会遇到各种兼容性的问题
1、在template中不要使用复杂的逻辑代码,尤其是在v-for做判断时,尽量用方法替代
2、在template中不要直接出现空字符串,空对象,使用变量去替代
3、若拉取的代码一致,但有一方报错,可能问题出在微信开发者工具上,比如在详情页中本地设置的调试基本库不同。
4、小程序开发中不允许对DOM和BOM的操作,不要使用类似jQuery,zepto等库
5、严格表明样式的类型,尤其是在使用sass、less等情况下
6、button按钮不能自定义样式,因为你写了type属性,只要不写type属性,可随意变更button样式
● 7、不能跳转页面的时候记得查看一下跳转的页面是否是tabBar页面,如果是,只能用switchTab来跳转
8、如果主包和分包都要用到的公共资源都大于了2M,只能想办法将能用远程的公共资源都放到远程里面
9、“errcode”:40029代表appid出现问题,检查前后台是否一致,或者重新创建一下项目,以及检查一下后台的APPID和AppSecre的参数配置
10、“errcode”: 48001代表小程序没有授权
11、json文件中 不能有注释,否则编译不通过
12、当打印数据显示[object Object],可以去掉拼接字符串,直接打印结果
13、目前小程序分包大小有以下限制:整个小程序所有分包大小不超过 20M,单个分包/主包大小不能超过 2M
14、组件中使用v-if不能用===,只能用==。
● 15、关闭sitemap索引提示。sitemap 的索引提示是默认开启的,如需要关闭 sitemap 的索引提示,可在小程序项目配置文件 project.config.json 的 setting 中配置字段 checkSiteMap 为 false
16、app.js调用页面的方法。页面调用app的方法可以通过getApp()获取全局的app实例调用,app.js调用页面的方法就是在app.js定义全局变量,然后在页面onload后将页面对象this赋值给这个全局变量供app.js调用这个全局变量的方法或者属性值
● 17、每个storage大小限制为1M,总共10M
18、脚本文件里data的数据,在更新的时候要通过this.setData()方法来更新,而不能直接用“=”来做。
19、小程序里也存在事件的冒泡,如果希望事件向上冒泡,则使用bind来绑定事件,若希望阻止事件冒泡,就使用catch来进行事件绑定。
20、小程序支持文件引用,有import和include两种方式,import有作用域,也就是引入的目标文件里import的模板不会被引入;而include等于是将目标文件除<template />以外的整个代码进行引入。
21、小程序真机调试请求接口失败时,注意的协议需为 https。域名请求时域名必须经过ICP备案。
22、禁止视口上下拖动:pages.json 中对应页面配置 "disablescroll" : true