返回旧版| 微信建站| 建站之家论坛| 我要建站 | 建站学习 | 加入收藏
百度小程序当前位置:首页 > cms教程 > 百度小程序 > 正文

百度小程序开发常见问题汇总

发布时间:2018-10-19 16:15:04   来源:   点击:
因为百度小程序和微信小程序代码几乎通用,所以很多人都是直接拿微信小程序的代码直接修改成百度的,比如微信的:wx:for、wx:if,wx:key改成对应的s-for、s-if、s-for-index等等,如果小程序没有太复杂的功能,修改完这些基本可以通用。

但是,一般你是用不了的,因为百度小程序有很多奇葩的地方,下面是我开发百度小程序踩过的坑,看看你有没有遇到过。

(1)json对象和对象字面量
百度小程序引入对象字面量的的调用方式,举例:
  1. list:[{"id":"95","catid":"28","typeid":"0"}, 
  2. {"id":"94","catid":"28","typeid":"0"}, 
  3. {"id":"93","catid":"28","typeid":"0"}] 
如果正常的循环微信和百度是一样的,但是如果通过模板template的方式来传值,则出现不同,
微信调用为:<template is="list_1" data="{{list}}"/> 并且is="list_1"可以动态指定,比如你可以写成:<template is="list_{{list_type}}" data="{{list}}"/>这样我可以随意指定调用某个模板;但是百度小程序就不行了,百度调用则为:<template is="list_1" data="{{ {list} }}"/> 并且is="list_1"必须固定死,不允许动态改变,
关于何时使用三个大括号还是两个,官网有说明,可以仔细体会一下:
https://smartprogram.baidu.com/docs/develop/framework/view_data/

(2)某些函数的命名
我在做列表页的时候,用的tab切换,需要实时调用不同的分类,所以封装一个函数为:getData。微信用的也是这个,一切正常,百度死活不出来内容,后来改成getInfo,发现竟然可以了.....,所以我不得不怀疑有某些函数不能用,同样还有:openLocation,不知道这算不算bug

(3)模板引入公共页面
比如引入公共头部
按理说我直接把头部要呈现的数据直接在header/header/下的header.js中赋值即可,这样我每个页面调用,就不需要重复赋值了,但是不行,你调用一次就得在每个页面中重新赋值一次,所以感觉这个功能很鸡肋了,为什么不能一次性赋值,全站通用呢?

(4)默认css问题

用小程序demo提供的框架css,即app.css,真是坑坏了,竟然默认使用box-sizing: border-box,即IE怪异盒模型,造成原来样式很多不能用,差点没有大改,建议都改成:box-sizing: content-box或者直接废弃不用。

(5)swan.request请求返回整形bug问题(其实不能算bug)
最近做一个提交表单,本地测试一点问题没有,但是只要真机预览,表单死活无法提交,打印fail错误,提示:Value 1 of type java.lang.Integer cannot be converted to JSONObject。

刚开始一直是以为表单传值有问题,各种修改post,get来回切换,然后又在api接口上频繁修改,一直提示这个错误,,后来不经意才发现,是我返回值的问题,我本意是只需要返回0或1,通知小程序提交表单是成功还是失败,所以我只记echo 1或0了,本地测试毫无问题,没想到真机不认,所以只能改成
  1. $a['status'] = "succ"
  2. echo json_encode($a); 
无语中...,表示在这调试了一天,竟然因为这....

(6)百度小程序的兼容问题
百度小程序目前兼容性还是比较差的,并且他们官方审核还经常审核这些兼容性,比如map组件,苹果6s系统显示空白,另外建议前端块与块直接用一个clear:both清楚一些浮动。

(7)百度和微信的部分api的差异
百度不支持的:showShareMenu、setData(data, function)(百度小程序不支持function回调函数)
更多正在整理中


(8)百度开发者工具
和微信开发者工具比较,百度做的真心粗糙,如果这不值当的吐槽,那么他的编译和预览我必须吐槽了。
每次打开开发者工具,先来个大黑屏,开始编译,为什么不搞成自动后台编译的?
预览,这个让人头痛的预览,一个几百K的小程序,每次预览,等待他编译生成二维码,至少需要1分钟;就像我调试上面第5个问题的时候,不知道等了多少个1分钟,浪费了多少时间,敢不敢快点编译呢?
另外,真机预览我始终没调试成功,有成功的小伙伴能教教我么?

(9)百度审核人员
百度审核人员是目前上线小程序的一个大的拦路虎,各种挑刺,各种平台测试兼容性,当然严格一点是好事,可是您为什么不能大肚量一点,为什么不允许我的小程序出现其他小程序开发呢?





版权所有:郑州腾石网络科技有限公司 备案信息:豫ICP备18019117号
站长QQ:2863868475 业务合作咨询:15137100750(同微信)
本站所有投放的广告是有其他网站提供,不代表本站立场,同时网站首页广告位对外出租详情咨询本站站长!同时欢迎广大站长加入个人建站团队
  • 建站客服
  • CMS仿站
  • CMS学习
  • 技术交流群:336572814