微信小程序常見問題
微信小程序為什么不能直接操作 Page.data?怎么樣才能獲取用戶輸入?為什么微信小程序腳本內不能使用window等對象?為什么微信小程序樣式表不支持級聯選擇器?如何修改微信小程序窗口的背景色?
根據微信小程序官網的小程序常見問題素材,特整理如下:
為什么微信小程序不能直接操作 Page.data
避免在直接對 Page.data 進行賦值修改,請使用 Page.setData 進行操作才能將數據同步到頁面中進行渲染
微信小程序怎么樣獲取用戶輸入
能夠獲取用戶輸入的組件,需要使用組件的屬性bindblur將用戶的輸入內容同步到 AppService。
<input id="myInput" bindblur="bindBlur" />
var inputContent = {} Page({ data: { inputContent: {} }, bindBlur: function(e) { inputContent[e.currentTarget.id] = e.detail.value } })
為什么微信小程序腳本內不能使用window等對象
頁面的腳本邏輯是在JsCore中運行,JsCore是一個沒有窗口對象的環境,所以不能在腳本中使用window,也無法在腳本中操作組件
為什么 微信小程序的zepto/jquery 無法使用
zepto/jquery 會使用到window對象和document對象,所以無法使用。
wx.navigateTo無法打開頁面
一個應用同時只能打開5個頁面,當已經打開了5個頁面之后,wx.navigateTo不能正常打開新頁面。請避免多層級的交互方式,或者使用wx.redirectTo
為什么樣式表不支持級聯選擇器
WXSS支持以.開始的類選擇器。如:
.normal_view { color: #000000; padding: 10px; }
可以使用標簽選擇器,控制同一類組件的樣式。如:使用input標簽選擇器控制<input/>的默認樣式。
input { width: 100px; }
為什么本地資源無法通過 WXSS 獲取
background-image:可以使用網絡圖片,或者 base64,或者使用<image/>標簽
如何修改微信小程序窗口的背景色
使用 page 標簽選擇器,可以修改頂層節點的樣式
page { display: block; min-height: 100%; background-color: red; }
HTTPS 請求不成功
tls 僅支持 1.2 及以上版本
部分 Android 機型需要 tls1.0 或者 tls1.1,所以請確保服務器的 tls 版本為 1.0、1.1、1.2
網絡請求的 referer
網絡請求的 referer 是不可以設置的,格式固定為 https://servicewechat.com/{appid}/{version}/page-frame.html,其中 {appid} 為小程序的 appid,{version} 為小程序的版本號,版本號為 0 表示為開發版、體驗版以及審核版本,版本號為 devtools 表示為開發者工具,其余為正式版本。
為什么微信小程序的 map 組件總是在最上層
map、canvas、video、textarea 是由客戶端創建的原生組件,原生組件的層級是最高的,所以頁面中的其他組件無論設置 z-index 為多少,都無法蓋在原生組件上。 原生組件暫時還無法放在 scroll-view 上,也無法對原生組件設置 css 動畫。
掃二維碼手機查看該文章