🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# 微信小程序开发需要注意的29个坑 1. 小程序名称可以由中文、数字、英文。长度在3-20个字符之间,一个中文字等于2个字符。 2. 小程序名称不得与公众平台已有的订阅号、服务号重复。如提示重名,请更换名称进行设置。 **3. 小程序名称在帐号信息设置时完成,请谨慎设置,一旦设置暂不支持修改。** **4. 更换名称进行设置。如果企业商标,组织名称等名称被侵权,可通过公众平台侵权投诉流程发起投诉,取回名称使用权。** 5. 个人开发者无法申请微信小程序;目前微信仅支持企业、政府、媒体、其他组织申请。 6. 一个主体可以注册30个,一个绑定身份的开发者只能创建5个微信小程序。 对于员工来说,请不要随便借给你的老板你的微信来注册微信小程序,因为你这样就没有机会了。 对于老板来说,请不要随便借给你的员工微信来注册微信小程序,因为你可能要不回来。 7. 如果你不是特殊组织,你还是要花300元进行认证。 即使你对公帐号已经验证,你也需要缴纳300**元**(支持微信支付)进行验证,这样才能够打开审核开关,发布小程序。 **微信支付需要微信认证后才能使用。** 8. 服务器配置每月只有3次修改机会,省着点用,小心没机会。 没事别乱动下面的配置,一定确定了再动,并且一次性写完整,不然你改个小标点都会浪费你的一次机会。 9. 你的域名、备案、https要准备好,不然做不了。(服务器域名需进过ICP备案、新备案域名需24小时候才能配置。域名格式只支持雅文大小写字母、数字及“-”,不支持IP地址及端口号) 10. 小程序头像、介绍每月只能修改5次,服务范围每月只能修改1次。小程序二维码在第一个版本上线后才能获得。 11. 选用模板消息时,你可用该标题的模板搭配不同的关键词使用,配置提交后关键词种类和顺序将不能修改。 12. 找不到模板关键词的时候,可以进行申请添加。每月可以提交5次新关键词,通过后会被共享。(堆自家关键词的好机会呀!!) **13. 一个小程序账号只有一个管理员(可修改),可以绑定10位开发者。** 14. 重点注意: 开发版本:使用开发者工具,可将代码上传到开发版本中。 开发版本只保留每人最新的一份上传的代码。点击提交审核,可将代码提交审核。开发版本可删除,不影响线上版本和审核中版本的代码。 审核中版本:只能有一份代码处于审核中。有审核结果后可以发布到线上,也可直接重新提交审核,覆盖原审核版本。 线上版本:线上所有用户使用的代码版本,该版本代码在新版本代码发布后被覆盖更新。 15. 小程序AppSecret只有管理员才能查看,平台不会明文保存AppSecret。 16. 数据分析只统计已发布线上版本使用数值,同时提供实时统计数据。 17. 开发者工具目前提供windows 64 、 windows 32 、 mac版本(版本目前持续更新迭代中,可能需要常常去update)。 **18. 内测阶段,代码上传功能仅管理员微信号可操作。** 19. 书写代码后,工具会自动帮助用户保存当前的代码编辑状态,直接关闭工具或者切换到别的项目,并不会丢失已经编辑的文件状态,但需要注意的是,只有保存文件,修改内容才会真实的写到硬盘上,并触发实时预览。 20. 获取用户输入:需要使用组件的属性bindchange将用户的输入内容同步到 AppService。 **21. 脚本内不能使用window等对象** JsCore是一个没有窗口对象的环境,所以不能在脚本中使用window,也无法在脚本中操作组件。 22. zepto/jquery 会使用到window对象和document对象,所以无法使用。 23. 一个应用同时只能打开5个页面,当已经打开了5个页面之后,wx.navigateTo不能正常打开新页面。请避免多层级的交互方式,或者使用wx.redirectTo。 24. 样式表不支持级联选择器: WXSS支持以.开始的类选择器;可以使用标签选择器,控制同一类组件的样式。 25. **本地资源无法通过 css 获取**: background-image:可以使用网络图片,或者 base64,或者使用标签。 26. 修改窗口的背景色: 使用 page 标签选择器,可以修改顶层节点的样式。 27. 前台、后台定义: 当用户点击左上角关闭,或者按了设备Home 键离开微信,小程序并没有直接销毁,而是进入了后台; 当再次进入微信或再次打开小程序,又会从后台进入前台,只有当小程序进入后台一定时间,或者系统资源占用过高,才会被真正的销毁。 28. `App()` 必须在 `app.js` 中注册,且不能注册多个。 不要在定义于 `App()` 内的函数中调用 `getApp()` ,使用 this 就可以拿到 app 实例。 不要在 onLaunch 的时候调用 getCurrentPage(),此时 page 还没有生成。 通过 getApp() 获取实例之后,不要私自调用生命周期函数。 29. tabBar 是一个数组,只能配置最少2个、最多5个tab,tab 按数组的顺序排序。(底部导航栏)