请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册
搜索

互动交流 快应用开发吐槽笔记

18
回复
892
查看
[复制链接]

2

主题

37

帖子

195

积分

 楼主| 2018-10-25 10:16:51 显示全部楼层 |阅读模式
本帖最后由 kongkongye 于 2018-10-25 11:15 编辑

本职后端,开发过微信小程序,支付宝小程序,百度小程序.其中微信小程序感觉最成熟,社区也发展得完善,几个框架taro,wepy,mpvue都有用过,
个人最喜欢taro,而且现在taro在对接支付宝小程序,百度小程序,后面还将对接快应用(对这个能否对接上我表示怀疑),
什么时候真的对接上了快应用,那我肯定直接上taro了,原生的快应用踩的坑太多,这些坑我在开发其它小程序时都没碰到过.
支付宝小程序的话,开发着感觉跟微信小程序差不多,但社区没发展起来,还没好用的框架库之类的.
至于百度小程序,界面偶尔会白屏显示不出来,返回重新进一遍才显示,不太清楚为什么,试着开发了一下,一个简单的选择图片再在界面上展示的功能,
就报图片找不到错误,怎么都没解决(选择图片调的框架api,图片展示也是简单的image组件配置个src属性),然后暂时就没继续开发下去了.
然后就是快应用了,文档看着不是太规整,开发坑太多,框架整体感觉比较乱,像拼凑出来的功能.

(我在想,现在市场里的那些快应用,有几个是H5封装的,有几个是真正用快应用实现的)
回复

使用道具 举报

2

主题

37

帖子

195

积分

 楼主| 2018-10-25 10:18:30 显示全部楼层
调试模拟器不能用,怎么调都不行,后面花200买了个安卓机,总算能正常调试了
回复

使用道具 举报

2

主题

37

帖子

195

积分

 楼主| 2018-10-25 10:24:35 显示全部楼层
开发工具先用的官方的那个快应用开发工具,那界面怎么有点像vs?自动提示,自动补全时不时就失效了
然后我的电脑是苹果,点击调试按钮就提示找不到安卓设备,哪怕我的安卓手机通过数据线连着苹果电脑,
倒是用npm run watch + npm run server可以正常地进行调试与自动更新了,
后面我发现还是我的intellij idea编辑器好用,上面的两个命令也是控制台命令,跟快应用开发工具没关系的.
所以快应用开发工具就弃用了.
回复

使用道具 举报

2

主题

37

帖子

195

积分

 楼主| 2018-10-25 10:29:03 显示全部楼层
那个找不到webpack.config.js的错误也碰到了,但根据官方文档说明运行hap update --force也没有解决,倒是运行npm install解决了
回复

使用道具 举报

2

主题

37

帖子

195

积分

 楼主| 2018-10-25 10:37:36 显示全部楼层
本帖最后由 kongkongye 于 2018-10-25 10:39 编辑

之前开发hybrid app的时候在安卓机上碰到过一次不能用localhost访问(必须用后端服务器的ip来访问,哪怕是本地局域网内的,你以为是localhost的),现在开发快应用竟然又踩了一次坑而且fetch方法调用,如果地址访问不通,控制台直接没有提示,错误原因都不好找
回复

使用道具 举报

2

主题

37

帖子

195

积分

 楼主| 2018-10-25 10:41:10 显示全部楼层
prompt.showToast({message: 'xxx'})写成了prompt.showToast({content: 'xxx'}),应用直接退出了,不应该报错让我看个错误日志的吗?
(为什么写错?代码从其它小程序那迁移过来的时候没注意)
回复

使用道具 举报

2

主题

37

帖子

195

积分

 楼主| 2018-10-25 10:47:26 显示全部楼层
我以为会像微信/支付宝/百度小程序一样,配置里会有个tabs标签页的配置,结果并没有...
文档里倒是说到了tabs标签页的做法,但实际开发发现,那样会让我的页面降级成组件!!!
本来'首页','我的'两个标签都设计为页面,有页面的生命周期,两个页面各做各的互不影响,
结果tabs是在一个页面里模拟出来的,所以生命周期分不开了,像onMenuPress()这个方法,写在'首页','我的'两个文件里就没有效果了
回复

使用道具 举报

2

主题

37

帖子

195

积分

 楼主| 2018-10-25 10:59:06 显示全部楼层
开发微信小程序的时候,我在尝试各个不同的框架,看看哪个更好用.
开发支付宝小程序的时候,因为没有现成的ui框架,我在与ui作斗争.
开发百度小程序的时候,官方接口没调通,怎么调不通...
开发快应用的时候,我在踩坑,先把功能弄通了
回复

使用道具 举报

2

主题

37

帖子

195

积分

 楼主| 2018-10-25 11:12:54 显示全部楼层
本帖最后由 kongkongye 于 2018-10-25 13:40 编辑

为什么没有全局的css文件???
这还不是最可怕的,可怕的是你在每个ux文件的style标签里手动@import你作为全局来用的css文件,
那么这个css文件就会在每个ux文件里被复制一遍!!!生成的rpk也会相应变大导入js也是同样的,我将一些通用的方法写在util.js里,然后在每个ux文件里引用其中的一个方法,结果整个js文件都被复制过去了.

对于js,推荐按官方文档说的,将所有的方法都写到app.ux里,在其它ux里通过this.$app.$def.xxx()来调用,这样js文件就不会复制多遍了.
但是css是真没办法了,app.ux里导入css,并不能在其它页面与组件里使用.
回复

使用道具 举报

1

主题

2

帖子

15

积分

2018-10-28 09:47:47 显示全部楼层
弹性布局也没有做好很好,一个属性没效果两个属性没有效果,三个属性一起用就有效果了!我之前做过微信开发,学习两天就能上手了,这个我看了两天还没有能布局。准备花一个礼拜熟悉他的套路才行。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册