這篇文章主要給大家介紹了微信小程序開發(fā)的四十個技術(shù)竅門的相關(guān)資料,相信對大家的學(xué)習(xí)或者使用微信小程序具有一定的參考借鑒價值,所以特別推薦給大家,需要的朋友們可以一起來看看吧。
前言
微信“小程序”正式上線一周時間,相關(guān)話題持續(xù)升溫。支付寶開發(fā)“小程序”的消息也隨即曝出,互聯(lián)網(wǎng)巨頭們摩拳擦掌,不少網(wǎng)友調(diào)侃說,這勢頭感覺要挑戰(zhàn)現(xiàn)有的“APP帝國”了。那么,面對如此炙手可熱的小程序,WeX5移動開發(fā)云也沒有閑著,經(jīng)過全網(wǎng)搜索,為大家篩選出一條小程序開發(fā)者的必讀文章,內(nèi)容涵蓋小程序開發(fā)實戰(zhàn)需要注意的40個技術(shù)點,供大家參考!
Q:為什么腳本內(nèi)不能使用window等對象
A:頁面的腳本邏輯是在JsCore中運行,JsCore是一個沒有窗口對象的環(huán)境,所以不能在腳本中使用window,也無法在腳本中操作組件
Q:為什么 zepto/jquery 無法使用
A:zepto/jquery 會使用到window對象和document對象,所以無法使用。
Q:wx.navigateTo無法打開頁面
A:一個應(yīng)用同時只能打開5個頁面,當(dāng)已經(jīng)打開了5個頁面之后,wx.navigateTo
不能正常打開新頁面。請避免多層級的交互方式,或者使用wx.redirectTo
Q:樣式表不支持級聯(lián)選擇器
A:WXSS支持以.開始的類選擇器。
Q:本地資源無法通過 css 獲取
A:background-image
:可以使用網(wǎng)絡(luò)圖片,或者 base64,或者使用
Q:如何修改窗口的背景色
A:使用 page 標簽選擇器,可以修改頂層節(jié)點的樣式
page { display: block; min-height: 100%; background-color: red; }
Q:為什么上傳不成功
A:為了提升體驗流暢度,編譯后的代碼包大小需小于 1MB ,大于 1MB 的代碼包將上傳失敗。
Q:HTTPS 請求不成功
A:tls 僅支持 1.2 及以上版本
Q:網(wǎng)絡(luò)請求的 referer
A:網(wǎng)絡(luò)請求的 referer 是不可以設(shè)置的,格式固定為 https://servicewechat.com/{appid}/{version}/page-frame.html,其中 {appid}
為小程序的 appid
, {version}
為小程序的版本號,版本號為 0 表示為開發(fā)版。
Q:不能直接操作 Page.data
A:避免在直接對 Page.data
進行賦值修改,請使用 Page.setData
進行操作才能將數(shù)據(jù)同步到頁面中進行渲染怎么獲取用戶輸入
能夠獲取用戶輸入的組件,需要使用組件的屬性bindchange將用戶的輸入內(nèi)容同步到 AppService。
<input id="myInput" bindchange="bindChange" /><checkbox id="myCheckbox" bindchange="bindChange" /> var inputContent = {} Page({ data: { inputContent: {} }, bindChange: function(e) { inputContent[e.currentTarget.id] = e.detail.value } })
Q:微信小程序支持fetch或者promise嗎?
A:promise工具目前不支持,fetch 客戶端不支持 工具下個版本保持統(tǒng)一。
Q:touchmove滑動事件里面的currentTarget. id值不變動。
A:ouchmove / touchend 事件的 target / currentTarget 會永遠是 touchstart 時的 target / currentTarget 。
Q:wx.request的POST方法的參數(shù)傳輸服務(wù)器接收不到的bug。
A:wx.request post 的 content-type 默認為 ‘application/json
'
如果服務(wù)器沒有用到 json 解釋的話,可以把 content-type
設(shè)置回 urlencoded
。
wx.request({ .... method: "POST", header: { "content-type": "application/x-www-form-urlencoded" }, ... })
Q:wx.uploadFile在手機上返回http碼403。
A:安卓的微信升級到6.5.2及其以上版本。
Q:小程序SVG支持嗎?
A:image的src放遠程svg可以,background-image
里也可以。
Q:wx.request返回statusCode兩端類型不一致。
A:確實有這個問題,稍后的版本將會修復(fù)。
Q:關(guān)于組件的動態(tài)生成與銷毀?
A:不支持動態(tài)生成組件,但可以用 wx:for 去渲染多個。
Q:小程序支持熱更嗎?
A:不支持開發(fā)者自行更替。
Q:一些接口的回調(diào)IOS和Android不一致,例如支付接口,用戶取消支付后,ios只回調(diào)complete方法,android則回調(diào)fail方法,官方文檔也沒有任何回調(diào)說明,造成開發(fā)很困難;類似的還有圖片選擇接口,分享接口等等。
A:支付接口,用戶取消支付后,ios只回調(diào)complete
方法,android則回調(diào)fail
方法,問題已記錄,多謝反饋。
Q:如果icon已經(jīng)在服務(wù)器上了,想用直接訪問網(wǎng)址的方法加載圖片進來這樣可以嗎?
A:不能。
Q:ipad不能使用小程序?
A:暫時不支持ipad打開小程序。
Q:小程序音頻,視頻播放器問題 。1、能夠只隱藏進度條跟時間嗎?2、現(xiàn)在iOS平臺上的時間顯示是0:00,但是android上會顯示錯誤碼,能夠通過什么設(shè)置修改嗎?
A:1:下個版本會修改這里的交互,不顯示進度條和時間。2:6.5.3 版本已修復(fù)此問題。
Q:拍照窗口可以加浮層嗎?
A:暫時不支持。
Q:開發(fā)者工具經(jīng)常報jsEngineScriptError錯誤,會導(dǎo)致頁面白屏。
A:移步下載最新 0.12.130400 版本的開發(fā)工具試試
Q:開發(fā)者工具里面,SPA頁面,更改title無效。
A:wx.setNavigationBarTitle
可以通過 API 改變導(dǎo)航欄標題。
Q:請問小程序頁內(nèi)支持長按保存圖片或分享圖片嗎?
A:目前沒有這個功能。
Q:關(guān)于swiper中的current問題。如果在新的版本中,直接設(shè)current,會產(chǎn)生的效果是:無論從哪個swiper元素點擊進去,都會顯示swiper第一個子元素的值。
A:目前swiper在處理swiper-item
動態(tài)變化的情況時有一些bug,會很快修復(fù)的。
Q:小程序能引用自己服務(wù)器上的wxss和js文件嗎?
A:不能,無法執(zhí)行遠程代碼。
Q:蘋果7,提示內(nèi)部錯誤,內(nèi)存占用過多。
A:頁面做的預(yù)加載,列表中有圖片,圖片渲染的太多了,解決辦法就是不當(dāng)屏展示的圖片,不讓它渲染。
Q:小程序體驗者安卓卡在加載頁面進不去,IOS可以進去。
A:這是android微信客戶端舊版本的bug, 請下載最新版本的 6.5.3 客戶端。
Q:請問目前微信小程序支持藍牙嗎?
A:目前不支持。
Q:分享功能真機沒有效果?
A:這是android微信客戶端舊版本的bug, 請下載最新版本的 6.5.3 客戶端。
Q:強制使用https,開發(fā)和測試環(huán)境下怎么聯(lián)調(diào)和測試?
A:「微信web開發(fā)者工具」->「項目」->「開發(fā)環(huán)境不校驗請求域名及TLS版本」。
Q:wx.showToast()方法無效。
調(diào)用wx.request
請求網(wǎng)絡(luò)然后在
complete: function (res) { // complete wx.hideToast(); }
在成功方法里面如果要進行showToast
的時候感覺無效,并沒有彈出提示框。
A:success
回調(diào)調(diào)用是在 complete
之前的,如果在 success showToast
,下一步 complete hideToast
就會被沖掉 showToast
。
Q:picker 組件中的文字大小是否支持修改?
A:不支持修改。
Q:tabBar的圖片在android和ios上面大小差異太大。
A:這是android微信客戶端舊版本的bug, 請下載最新版本的 6.5.3 客戶端
Q:tabbar 頁面返回問題。非首頁的tabbar 頁面 點擊左上角返回箭頭時如何返回到小程序首頁? 現(xiàn)在是直接退出小程序了
A:創(chuàng)建新頁面時用 navigateTo 才會新建新頁面,同時保留舊頁面,如果用 redirectTo 是在當(dāng)前頁面內(nèi)跳轉(zhuǎn)。
Q:問下 wx.request() 怎么設(shè)置成同步。
A:reqeust是發(fā)起網(wǎng)絡(luò)請求。沒有同步接口。
Q:最新mac版工具不可用,進來就出現(xiàn)獲取appservice 失敗。
A:工具設(shè)置中選擇直接鏈接網(wǎng)絡(luò) ?;蛘?系統(tǒng)中的代理軟件設(shè)置工具直接鏈接網(wǎng)絡(luò)。
Q:真機 view overflow-y下滑會很卡。
A:父層需要 position:relative;
加了之后就不卡了。
總結(jié)
以上是微信小程序開發(fā)的四十個技術(shù)竅門總結(jié)的詳細內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

熱AI工具

Undress AI Tool
免費脫衣服圖片

Undresser.AI Undress
人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover
用于從照片中去除衣服的在線人工智能工具。

Clothoff.io
AI脫衣機

Video Face Swap
使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的代碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級代碼編輯軟件(SublimeText3)

小程序開發(fā)中的PHP安全防護與攻擊防范隨著移動互聯(lián)網(wǎng)的迅猛發(fā)展,小程序成為了人們生活中重要的一部分。而PHP作為一種強大而靈活的后端開發(fā)語言,也被廣泛應(yīng)用于小程序的開發(fā)中。然而,安全問題一直是程序開發(fā)中需要重視的方面。本文將重點介紹小程序開發(fā)中PHP的安全防護與攻擊防范,同時提供一些代碼示例。XSS(跨站腳本攻擊)防范XSS攻擊是指黑客通過向網(wǎng)頁注入惡意腳本

PHP在小程序開發(fā)中的頁面跳轉(zhuǎn)與路由管理隨著小程序的快速發(fā)展,越來越多的開發(fā)者開始將PHP與小程序開發(fā)相結(jié)合。在小程序開發(fā)中,頁面跳轉(zhuǎn)和路由管理是非常重要的一部分,它能夠幫助開發(fā)者實現(xiàn)頁面之間的切換和導(dǎo)航操作。PHP作為一種常用的服務(wù)器端編程語言,可以很好地與小程序進行交互和數(shù)據(jù)傳遞,下面我們來詳細了解一下PHP在小程序中的頁面跳轉(zhuǎn)與路由管理。一、頁面跳轉(zhuǎn)基

小程序開發(fā)中的PHP權(quán)限管理與用戶角色設(shè)定隨著小程序的普及和應(yīng)用范圍的擴大,用戶對于小程序的功能和安全性提出了更高的要求,其中權(quán)限管理和用戶角色設(shè)定是保證小程序安全性的重要一環(huán)。在小程序中使用PHP進行權(quán)限管理和用戶角色設(shè)定能夠有效地保護用戶的數(shù)據(jù)和隱私,下面將介紹如何實現(xiàn)這一功能。一、權(quán)限管理的實現(xiàn)權(quán)限管理是指根據(jù)用戶的身份和角色,授予不同的操作權(quán)限。在小

PHP是一種開源的腳本語言,廣泛應(yīng)用于Web開發(fā)和服務(wù)器端編程,尤其在微信開發(fā)中得到了廣泛的應(yīng)用。如今,越來越多的企業(yè)和開發(fā)者開始使用PHP進行微信開發(fā),因為它成為了一款真正的易學(xué)易用的開發(fā)語言。在微信開發(fā)中,消息的加密和解密是一個非常重要的問題,因為它們涉及到數(shù)據(jù)的安全性。對于沒有加密和解密方式的消息,黑客可以輕松獲取到其中的數(shù)據(jù),對用戶造成威脅

如何在uni-app中實現(xiàn)小程序開發(fā)和發(fā)布隨著移動互聯(lián)網(wǎng)的發(fā)展,小程序成為了移動應(yīng)用開發(fā)的一個重要方向。而uni-app作為一個跨平臺的開發(fā)框架,可以同時支持多個小程序平臺的開發(fā),如微信、支付寶、百度等。下面將詳細介紹如何使用uni-app開發(fā)和發(fā)布小程序,并提供一些具體的代碼示例。一、小程序開發(fā)前準備在開始使用uni-app開發(fā)小程序之前,需要做一些準備工

今天我們來學(xué)習(xí)一下微信小程序中PHP開發(fā)的下拉菜單實現(xiàn)方法。微信小程序是一種輕量級的應(yīng)用程序,用戶可以在微信里直接使用,而且不需要下載安裝,非常方便。而PHP是一種非常流行的后端編程語言,也是與微信小程序配合很好的一種語言。下面我們就來看看如何在微信小程序中使用PHP開發(fā)下拉菜單。首先,我們需要準備好開發(fā)環(huán)境,包括PHP、微信小程序開發(fā)工具和服務(wù)器。然后我們

小程序開發(fā)中的PHP數(shù)據(jù)緩存與緩存策略隨著小程序的快速發(fā)展,更多的開發(fā)者開始關(guān)注如何提高小程序的性能和響應(yīng)速度。其中一個重要的優(yōu)化手段就是使用數(shù)據(jù)緩存來減少對數(shù)據(jù)庫和外部接口的頻繁訪問。而在PHP中,我們可以利用各種緩存策略來實現(xiàn)數(shù)據(jù)緩存。本文將介紹PHP中的數(shù)據(jù)緩存原理,并提供幾個常見的緩存策略的示例代碼。一、數(shù)據(jù)緩存原理數(shù)據(jù)緩存是指將數(shù)據(jù)存放在內(nèi)存中,以

在微信公眾號開發(fā)中,投票功能經(jīng)常被運用。投票功能是讓用戶快速參與互動的好方式,也是舉辦活動和調(diào)查意見的重要工具。本文將為您介紹如何使用PHP實現(xiàn)微信投票功能。獲取微信公眾號授權(quán)首先,你需要獲取微信公眾號的授權(quán)。在微信公眾平臺上,你需要配置微信公眾號的api地址、官方賬號和公眾號對應(yīng)的token。在我們使用PHP語言開發(fā)的過程中,我們需要使用微信官方提供的PH
