文章目录
百度智能小程序简介 官网 官方文档
- 智能小程序是一种新的开放能力,开发者可以快速地开发一个智能小程序。通过搜索,用户可以在手百 App 内被便捷地获取和传播。
- 智能小程序现已经进入入驻申请阶段,目前仅面向企业、政府、媒体及其它组织等非个人主体开放申请,个人开发者暂时无法申请。
- 智能小程序是一种新的开放能力,开发者可以快速地开发一个智能小程序。通过搜索,用户可以在手百 App 内被便捷地获取和传播。
- 智能小程序现已经进入入驻申请阶段,目前仅面向企业、政府、媒体及其它组织等非个人主体开放申请,个人开发者暂时无法申请。
由于百度智能小程序刚刚开放第三方申请。开发基础设施与开发体验极度不理想,目前还没有建立完善的社区体系。因此开发中遇到了问题大多靠自己分析,大部分是从微信小程序项目迁移至百度小程序遇到的,做了简单的总结。
开发中问题汇总
- 整体与微信程序开发保持一致,相似性有90%以上
- 文档、开发工具、框架设计、api接口均保持一致。即微信小程序可低成本迁移至百度小程序。对于某一具体功能开发具有相似性,可参考微信小程序逻辑。例如:登陆认证、应用授权等
- 开发上的区别(可全局替换)
- 文件后缀不同。例如:模版文件:
.wxml->.swan
,样式文件: .wxss->.css
- 渲染时部分指令不同。例如:条件渲染:
wx:if->s-if
等
- 全局接口调用对象不同。例如:
wx.xxx->swan.xxx
- 由于模拟器IDE可以在未登录时使用,应该时刻注意,IDE的登陆状态
- 例如:未登录时会造成
swan.getUserInfo
调用失败。
divpullispani
等html标签,特殊情况
- 模拟器调试面板
swan Tab
中,会过滤掉这些标签。
- 不能够正常调试和查看
class
样式信息
- 这些标签不能绑定事件。例如
bindtap
- 解决方案: 换成
,
百度小程序支持的标签即可
- 样式文件不支持这些标签选择器。但是使用class属性可正常添加css样式
.container ul li
不能正常设置css样式
- 解决方案: 渲染层可修改为
,css使用class选择器 .container .ul .li
可正常设置样式
- 渲染组件时不能使用
字符串
- 例如:
{{ 1 ,会导致渲染出现异常。ps: 我怀疑渲染内部使用正则匹配,会匹配到 这个关键字符串
- 解决方案:换成
大于 >
即可
-
- 渲染组件,某一个属性为对象时,需要用
{{{}}}
- 例如:
-
- 不支根据数据持动态引入
- 例如: 声明模版
123
。应用模版
, 当id=1
时,不能正确引入template-1
。但是如果直接写死template-1
可以直接引用。
- 解决方案: 可使用条件渲染动态引入模版。
-
不能正常播放.m3u8
格式视频
- 目前正在寻找原因
- 解决方案: 使用
代替即可
-
模拟器盒模型异常异常,但是真机预览支持。
- 例如:
overflow:Shopfadden;display:inline-block;max-width:100rpx
等属性无效。即不能根据内容撑开宽度,或者折叠文字,只可以设置固定宽度,默认是'block'。
-
在地图上显示不出来,在模拟器上可以。
- 解决方案: 坐等官方修复
-
- 自定义组件不能2层嵌套
- 解决方案: 外层嵌套一个
标签
-
相关资源
- 百度小程序开发资源汇总 目前暂不完善
- wx2rm 微信小程序项目转换为百度小程序的工具
- taro 框架已经支持百度小程序
- 文档、开发工具、框架设计、api接口均保持一致。即微信小程序可低成本迁移至百度小程序。对于某一具体功能开发具有相似性,可参考微信小程序逻辑。例如:登陆认证、应用授权等
- 开发上的区别(可全局替换)
- 文件后缀不同。例如:模版文件:
.wxml->.swan
,样式文件:.wxss->.css
- 渲染时部分指令不同。例如:条件渲染:
wx:if->s-if
等 - 全局接口调用对象不同。例如:
wx.xxx->swan.xxx
- 文件后缀不同。例如:模版文件:
- 例如:未登录时会造成
swan.getUserInfo
调用失败。
divpullispani
等html标签,特殊情况
- 模拟器调试面板
swan Tab
中,会过滤掉这些标签。- 不能够正常调试和查看
class
样式信息
- 不能够正常调试和查看
- 这些标签不能绑定事件。例如
bindtap
- 解决方案: 换成
,
百度小程序支持的标签即可
- 解决方案: 换成
- 样式文件不支持这些标签选择器。但是使用class属性可正常添加css样式
.container ul li
不能正常设置css样式- 解决方案: 渲染层可修改为
,css使用class选择器
.container .ul .li
可正常设置样式
字符串
- 例如:
{{ 1 ,会导致渲染出现异常。ps: 我怀疑渲染内部使用正则匹配,会匹配到
这个关键字符串
- 解决方案:换成
大于 >
即可 - 渲染组件,某一个属性为对象时,需要用
{{{}}}
- 例如:
- 例如:
- 不支根据数据持动态引入
- 例如: 声明模版
123
。应用模版, 当
id=1
时,不能正确引入template-1
。但是如果直接写死template-1
可以直接引用。 - 解决方案: 可使用条件渲染动态引入模版。
- 例如: 声明模版
不能正常播放
.m3u8
格式视频- 目前正在寻找原因
- 解决方案: 使用
代替即可
模拟器盒模型异常异常,但是真机预览支持。
- 例如:
overflow:Shopfadden;display:inline-block;max-width:100rpx
等属性无效。即不能根据内容撑开宽度,或者折叠文字,只可以设置固定宽度,默认是'block'。
- 例如:
在地图上显示不出来,在模拟器上可以。
- 解决方案: 坐等官方修复
- 自定义组件不能2层嵌套
- 解决方案: 外层嵌套一个
标签
- 解决方案: 外层嵌套一个
-
相关资源
- 百度小程序开发资源汇总 目前暂不完善
- wx2rm 微信小程序项目转换为百度小程序的工具
- taro 框架已经支持百度小程序
<以上资讯仅供参考,如果您需解决具体问题,建议您关注作者;如果有软件产品开发需求,可在线咨询加速度产品经理获取方案和报价>
****更多行业产品开发方案,请关注jsudo加速度 https://www.jsudo.com***
【加速度jsudo(www.jsudo.com)】是国内知名企业数字化建设提供商,为企业提供电商平台搭建(多种模式电商平台搭建:B2B/B2B2C/B2C/O2O/新零售等)、智慧园区建设、数字化营销、人才外包等服务,点击这里查看了解更多行业解决方案。