百度小程序与微信小程序综合对比
小程序开发
浏览:1119 次

百度小程序已经发布几个月了。我们从官方文件中可以看到,微信的一些功能基本都有,所以我们也建议大家去官网学习。文档地址:,如果您有问题,可以到百度小程序社区询问:(您需要登录并拥有appid)。
本文分享了百度小程序和微信小程序的一些区别。
百度小程序组件隐藏属性差异
虽然百度小程序没有提到这个属性,但我发现它在本地和真机上都有支持。但与微信仍有一个区别:
简体中文:
数据:{
标志:'123'
}
xml:
百度小程序输出:
二
四
八
微信输出:
四
八
十
百度:当hidden的值是平坦的,或者插值{{false}}是平坦的时,百度组件将不会被隐藏。在其他情况下,无论它是真的还是空的,或者其他值不是假的,或者计算的值不是平坦的,它们都将被隐藏。
微信:当隐藏属性为空或{{false}}插件值为false时,它将不会被隐藏。一种特殊情况是,它被直接指定为hidden=“false”。这里的False不被视为布尔值,因此它也被隐藏。
总结:从以上两个可以看出,4和8都是可用的。当我们这样做时,我们只需要确保hidden的值是插值的形式,并且插值结果是布尔的,那么两者可以获得一致的性能。
Js文件命名空间wx。替换为天鹅
wx。request()->swan.request(

wx。showModal()->swan.显示模式()
wx。canIuse()->swan.canIuse(
……
Swan文件整体替换wx:到s-
主要有两个地方:
1.条件判断
wx:if->s-if
2.列表循环
wx:用于->s用于
wx:用于项目->用于项目
wx:键->s键
有两点不同于微信
1.在for循环中,百度不支持将其放在与if相同的语句中。我们可以通过添加块来判断条件
2.该条件判断百度不使用插值计算。
这是微信:
这是百度的:
3.组件中的三元运算符不支持<=Judge。我猜这可能是个bug。可能是使用了常规判断。
<view>{{1<=2?‘yes‘:‘no‘}}</view>
分析的内容是:
解决方案是将其更改为>=,或<
样板
1.声明要使用的模板。数据是要传输到模板的值。当它是一个对象时,该对象的字面量用三个大括号括起来,微信是{{}}。
<视图>

//模板-demo.js
第页({
数据:{
人:{姓名:“Lebron James”,位置:“SF”,年龄:33}
}
});
2.不支持动态调用
当我需要根据tid值调用模板时,例如,当tid=1时,使用以下方法调用
第页({
数据:{
第三天:1
}
});
通过上述方法无法获得模板tid-1的内容。我们可以通过判断条件调用模板:
不要将getData()用于Page函数
因为我使用这个函数来获取之前页面上的请求,我发现百度小程序中的这个函数无法在onload中执行。此外,如果您单击以直接执行此功能,将报告错误。
选项传递参数,最好添加enCodeURIComponent()
当我之前的一个微信小程序发送url时,参数没有格式化。直接传输后,在百度的小程序中发现接收不完整,例如,转换为https://。
swan.createSelectorQuery()

只有在加载页面DOM之后,此API才能获取特定值。如果您在设置数据后直接获取值,则在onload或request成功后,也可以不获取内容。
一种方法是添加