快應用開發常見問題以及解決方案【持續更新】

接觸快應用也有一段時間了,踩過了大大小小的坑,讓我活到了今天。準備在此立貼持續更新,記錄遇到的問題以及解決方案,造福大衆。

css 方面

一、文字豎排不支持

目前官方還不支持writing-mode,除了等待官方支持這個api之外,還可使用一種hack手段:給元素設置一個比較小的寬度。javascript

二、text-align: center;居中無效

因爲快應用默認是flex佈局,因此居中的話應當使用justify-content: center;css

template 方面

一、使用了list組件以後整個頁面都不能滾動了

list組件須要加上「scrollpage=true」。https://doc.quickapp.cn/widge...html

二、list 組件滑動無端閃退-- 很抱歉, 「快應用」 已中止運行。

極可能是你的list-item 裏面用了不一樣的文件結構致使的java

<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才行npm

<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>
三、richtext 插入的html片斷,沒法更改樣式?有時候圖片還超出屏幕的邊緣

因爲官方沒有接口對richtext的樣式做修改,目前能夠有的一種辦法就是使用正則搜索匹配,而後加樣式在須要的地方json

四、list組件有時候會沒法渲染

解決這個問題但是花了我很多時間吶。這個是快應用已知的一個bug。
當list用在第三層的時候就會有這個沒法渲染的問題。segmentfault

<template>
<div>
  <div>
    <list>
    ...
    </list>
  </div>
</div>
</template>

解決方案: 改爲div,或者不要放在第三層。windows

js 方面

一、storage.get 在success中設置變量沒反應
var a;
storage.get({
  key: 'a',
  success: function (data) {
    a = data;
  }
})
console.log(a) //undefined

緣由是storage是異步的。api

其餘

一、如何達到全屏的效果

在配置文件manifest.json 中設置display,"fullScreen": false, 能夠隱藏電量信號的手機狀態欄;"titleBar": false; 能夠隱藏titleBar。這樣子就全屏了。app

二、工程升級之後,background-image變成白色背景了

background-image 使用了相對路徑,工程對相對路徑的處理有點bug;暫時改爲絕對路徑就行了

三、windows 安裝完找不到hap 命令

這個多半是npm 安裝目錄沒有配置環境變量的問題。

npm prefix -g 
// 會打印一個出一個路徑,將它添加進系統變量中
// 再次運行
npm install -g hap-toolkit

參考:
快應用採坑與flex佈局講解
開發文檔

相關文章
相關標籤/搜索