接触快应用也有一段时间了,踩过了大大小小的坑,让我活到了今天。准备在此立贴持续更新,记录遇到的问题以及解决方案,造福大众。
css 方面
1、文字竖排不支持
目前官方还不支持writing-mode,除了等待官方支持这个api以外,还可以使用一种hack手段:给元素设置一个比较小的宽度。
2、text-align: center;居中无效
由于快应用默认是flex布局,所以居中的话应当使用justify-content: center;
template 方面
1、使用了list组件之后整个页面都不能滚动了
list组件需要加上“scrollpage=true”。https://doc.quickapp.cn/widge...
2、list 组件滑动无故闪退-- 很抱歉, “快应用” 已停止运行。
很可能是你的list-item 里面用了不同的文件结构导致的
<list-item>
<div if={{item.img}}>
<image src='{{item.img}}'>
</div>
<div else>
<text>{{item.text}}</text>
</div>
</list-item>
相同的type的list-item必须具备完全一致的DOM结构, 上例的list-item 的dom结构是会改变的,理应使用两个不同的type 的list-item才行
<list-item type="img" if={{item.img}}>
<div>
<image src='{{item.img}}'>
</div>
</list-item>
<list type="text" else>
<div>
<text>{{item.text}}</text>
</div>
</list-item>
3、richtext 插入的html片段,无法更改样式?有时候图片还超出屏幕的边缘
由于官方没有接口对richtext的样式作修改,目前可以有的一种办法就是使用正则搜索匹配,然后加样式在需要的地方
4、list组件有时候会无法渲染
解决这个问题可是花了我不少时间呐。这个是快应用已知的一个bug。
当list用在第三层的时候就会有这个无法渲染的问题。
<template>
<div>
<div>
<list>
...
</list>
</div>
</div>
</template>
解决方案: 改成div,或者不要放在第三层。
js 方面
1、storage.get 在success中设置变量没反应
var a;
storage.get({
key: 'a',
success: function (data) {
a = data;
}
})
console.log(a) //undefined
原因是storage是异步的。
其他
1、如何达到全屏的效果
在配置文件manifest.json 中设置display,"fullScreen": false, 可以隐藏电量信号的手机状态栏;"titleBar": false; 可以隐藏titleBar。这样子就全屏了。
2、工程升级以后,background-image变成白色背景了
background-image 使用了相对路径,工程对相对路径的处理有点bug;暂时改成绝对路径就好了
3、windows 安装完找不到hap 命令
这个多半是npm 安装目录没有配置环境变量的问题。
npm prefix -g
// 会打印一个出一个路径,将它添加进系统变量中
// 再次运行
npm install -g hap-toolkit
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。