微信小程序開發(fā)文檔圖標(biāo)(微信小程序開發(fā)文檔圖標(biāo)不顯示)
本篇文章給大家談?wù)勎⑿判〕绦蜷_發(fā)文檔圖標(biāo),以及微信小程序開發(fā)文檔圖標(biāo)不顯示對應(yīng)的知識點,希望對各位有所幫助,不要忘了收藏本站喔。
本文目錄一覽:
微信小程序怎么設(shè)計 微信小程序設(shè)計指南
概要
基于微信小程序輕快的特點,我們擬定了小程序界面設(shè)計指南和建議。 設(shè)計指南建立在充分尊重用戶知情權(quán)與操作權(quán)的基礎(chǔ)之上。旨在微信生態(tài)體系內(nèi),建立友好、高效、一致的用戶體驗,同時最大程度適應(yīng)和支持不同需求,實現(xiàn)用戶與小程序服務(wù)方的共贏。
友好禮貌
為了避免用戶在微信中使用小程序服務(wù)時,注意力被周圍復(fù)雜環(huán)境干擾,小程序在設(shè)計時應(yīng)該注意減少無關(guān)的設(shè)計元素對用戶目標(biāo)的干擾,禮貌地向用戶展示程序提供的服務(wù),友好地引導(dǎo)用戶進行操作。
重點突出
每個頁面都應(yīng)有明確的重點,以便于用戶每進入一個新頁面的時候都能快速地理解頁面內(nèi)容。在確定了重點的前提下,應(yīng)盡量避免頁面上出現(xiàn)其它與用戶的決策和操作無關(guān)的干擾因素。
反例示意
此頁面的主題是查詢,卻添加了諸多與查詢不相關(guān)的業(yè)務(wù)入口,與用戶的目標(biāo)無關(guān),易造成用戶的迷失。
糾正示意
去掉任何與用戶目標(biāo)不相關(guān)的內(nèi)容,明確頁面主題,在技術(shù)和頁面控件允許的前提下提供有助于用戶決策和操作的幫助內(nèi)容,比如最近搜索詞等。
反例示意
操作沒有主次,讓用戶無從選擇。
糾正示意
首先要避免并列過多操作讓用戶選擇,在不得不并列多個操作時,需區(qū)分操作主次,減輕用戶的選擇難度。
流程明確
為了讓用戶順暢地使用頁面,在用戶進行某一個操作流程時,應(yīng)避免出現(xiàn)用戶目標(biāo)流程之外的內(nèi)容而打斷用戶。
反例示意
用戶本打算進行搜索,在進入頁面時卻被突如其來的模態(tài)抽獎框所打斷;對于抽獎沒有興趣的用戶是非常不友好的干擾; 而即便有部分用戶確實被“誘人”的抽獎活動所吸引,離開主流程去抽獎之后可能就遺忘了原本的目標(biāo),進而失去了對產(chǎn)品真正價值的利用和認(rèn)識。
清晰明確
一旦用戶進入我們的小程序頁面,我們就有責(zé)任和義務(wù)清晰明確地告知用戶身在何處、又可以往何處去,確保用戶在頁面中游刃有余地穿梭而不迷路,這樣才能為用戶提供安全且愉悅的使用體驗。
導(dǎo)航明確,來去自如
導(dǎo)航是確保用戶在網(wǎng)頁中瀏覽跳轉(zhuǎn)時不迷路的最關(guān)鍵因素。導(dǎo)航需要告訴用戶,當(dāng)前在哪,可以去哪,如何回去等問題。首先在微信系統(tǒng)內(nèi)的所有小程序的全部頁面,均會自帶有微信提供的導(dǎo)航欄,統(tǒng)一解決當(dāng)前在哪,如何回去的問題。在微信層級導(dǎo)航保持體驗一致,有助于用戶在微信內(nèi)形成統(tǒng)一的體驗和交互認(rèn)知,無需在各小程序和其他微信頁面的切換中新增學(xué)習(xí)成本或改變使用習(xí)慣。
微信導(dǎo)航欄
微信導(dǎo)航欄,直接繼承于客戶端,除導(dǎo)航欄顏色之外,開發(fā)者無需亦不可對其中的內(nèi)容進行自定義。但開發(fā)者需要規(guī)定小程序各個頁面的跳轉(zhuǎn)關(guān)系,讓導(dǎo)航系統(tǒng)能夠以合理的方式工作。
微信導(dǎo)航欄分為導(dǎo)航區(qū)域、標(biāo)題區(qū)域以及操作區(qū)域。其中導(dǎo)航區(qū)控制程序頁面進程。目前導(dǎo)航欄分深淺兩種基本配色。
導(dǎo)航區(qū)(iOS)
微信進入小程序的第一個頁面,導(dǎo)航區(qū)通常只有一個操作——“返回”,即返回進入小程序前的微信頁面。 進入小程序后的次級頁面,導(dǎo)航區(qū)的操作為——“返回” 和“關(guān)閉”。 “返回”,即返回上一級小程序界面或微信界面?!瓣P(guān)閉”,即在當(dāng)前界面直接退出小程序,回到進入小程序前的微信頁面。
導(dǎo)航區(qū)(Android)
導(dǎo)航區(qū)僅存在唯一操作——直接退出小程序,回到進入小程序前的微信或系統(tǒng)桌面,安卓手機自帶的硬件返回鍵執(zhí)行返回上一級頁面的操作。
安卓導(dǎo)航存在一類特殊情況:當(dāng)用戶通過操作區(qū)的菜單將小程序添加至安卓桌面,并從安卓桌面打開小程序時,小程序的首頁,不展示導(dǎo)航按鈕。僅展示小程序標(biāo)題和操作區(qū)。小程序次級頁面,導(dǎo)航區(qū)只有返回上一級頁面的操作,而點擊安卓手機自帶的硬件返回鍵也起到相同作用。
微信導(dǎo)航欄自定義顏色規(guī)則(iOS和Android)
小程序?qū)Ш綑谥С只镜谋尘邦伾远x功能,選擇的顏色需要在滿足可用性前提下,和諧搭配微信提供的兩套主導(dǎo)航欄圖標(biāo)。建議參考以下選色效果:
選色方案示例
頁面內(nèi)導(dǎo)航
開發(fā)者可根據(jù)自身功能設(shè)計需要在頁面內(nèi)添加自有導(dǎo)航。并保持不同頁面間導(dǎo)航一致。但是受限于手機屏幕尺寸的限制,小程序頁面的導(dǎo)航應(yīng)盡量簡單,若僅為一般線性瀏覽的頁面建議僅使用微信導(dǎo)航欄即可。
開發(fā)者可選擇小程序頁面添加標(biāo)簽分頁(Tab)導(dǎo)航。標(biāo)簽分頁欄可固定在頁面頂部或者底部,便于用戶在不同的分頁間做切換。標(biāo)簽數(shù)量不得少于2個,最多不得超過5個,為確保點擊區(qū)域,建議標(biāo)簽數(shù)量不超過4項。一個頁面也不應(yīng)出現(xiàn)一組以上的標(biāo)簽分頁欄。
其中小程序首頁可選擇微信提供的原生底部標(biāo)簽分頁樣式,該樣式僅供小程序首頁使用。開發(fā)時可自定義圖標(biāo)樣式、標(biāo)簽文案以及文案顏色等,具體設(shè)置項如圖標(biāo)尺寸等參考可參考開發(fā)文檔和WeUI基礎(chǔ)控件庫。
頂部標(biāo)簽分頁欄顏色可自定義。在自定義顏色選擇中,務(wù)必注意保持分頁欄標(biāo)簽的可用性、可視性和可操作性。
減少等待,反饋及時
頁面的過長時間的等待會引起用戶的不良情緒,使用微信小程序項目提供的技術(shù)已能很大程度縮短等待時間。即便如此,當(dāng)不可避免的出現(xiàn)了加載和等待的時候,需要予以及時的反饋以舒緩用戶等待的不良情緒。
啟動頁加載
小程序啟動頁是小程序在微信內(nèi)一定程度上展現(xiàn)品牌特征的頁面之一。本頁面將突出展示小程序品牌特征和加載狀態(tài)。啟動頁除品牌標(biāo)志(Logo)展示外,頁面上的其他所有元素如加載進度指示,均由微信統(tǒng)一提供且不能更改,無需開發(fā)者開發(fā)。
頁面下拉刷新加載
在微信小程序內(nèi),微信提供標(biāo)準(zhǔn)的頁面下拉刷新加載能力和樣式,開發(fā)者無需自行開發(fā)。
微信下拉刷新錯誤使用案例
請避免以下錯誤使用情況,確保信息的可見性和頁面的可用性。
頁面內(nèi)加載反饋
開發(fā)者可在小程序里自定義頁面內(nèi)容的加載樣式。建議不管是使用在局部還是全局加載,自定義加載樣式都應(yīng)該盡可能簡潔,并使用簡單動畫告知用戶加載過程。 開發(fā)者也可以使用微信提供的,統(tǒng)一的頁面加載樣式,如圖中例所示。
模態(tài)加載
模態(tài)的加載樣式將覆蓋整個頁面的,由于無法明確告知具體加載的位置或內(nèi)容將可能引起用戶的焦慮感,因此應(yīng)謹(jǐn)慎使用。除了在某些全局性操作下不要使用模態(tài)的加載。
局部加載反饋
局部加載反饋即只在觸發(fā)加載的頁面局部進行反饋,這樣的反饋機制更加有針對性,頁面跳動小,是微信推薦的反饋方式。例如:
加載反饋注意事項
若載入時間較長,應(yīng)提供取消操作,并使用進度條顯示載入的進度。
載入過程中,應(yīng)保持動畫效果 ; 無動畫效果的加載很容易讓人產(chǎn)生該界面已經(jīng)卡死的錯覺。
不要在同一個頁面同時使用超過1個加載動畫。
結(jié)果反饋
除了在用戶等待的過程中需予以及時反饋外,對操作的結(jié)果也需要予以明確反饋。根據(jù)實際情況,可選擇不同的結(jié)果反饋樣式。對于頁面局部的操作,可在操作區(qū)域予以直接反饋,對于頁面級操作結(jié)果,可使用彈出式提示(Toast)、模態(tài)對話框或結(jié)果頁面展示。
頁面局部操作結(jié)果反饋
對于頁面局部的操作,可在操作區(qū)域予以直接反饋,例如點擊多選控件前后如下圖。對于常用控件,微信設(shè)計中心將提供控件庫,其中的控件都已提供完整操作反饋。
頁面全局操作結(jié)果——彈出式提示(Toast)
彈出式提示(Toast)適用于輕量級的成功提示,1.5秒后自動消失,并不打斷流程,對用戶影響較小,適用于不需要強調(diào)的操作提醒,例如成功提示。特別注意該形式不適用于錯誤提示,因為錯誤提示需明確告知用戶,因而不適合使用一閃而過的彈出式提示。
頁面全局操作結(jié)果——模態(tài)對話框
對于需要用戶明確知曉的操作結(jié)果狀態(tài)可通過模態(tài)對話框來提示,并可附帶下一步操作指引。
頁面全局操作結(jié)果—結(jié)果頁
對于操作結(jié)果已經(jīng)是當(dāng)前流程的終結(jié)的情況,可使用操作結(jié)果頁來反饋。這種方式最為強烈和明確的告知用戶操作已經(jīng)完成,并可根據(jù)實際情況給出下一步操作的指引。
異??煽兀新房赏?/p>
在設(shè)計任何的任務(wù)和流程時,異常狀態(tài)和流程往往容易被忽略,而這些異常場景往往是用戶最為沮喪和需要幫助的時候,因此需要格外注意異常狀態(tài)的設(shè)計,在出現(xiàn)異常時予以用戶必要的狀態(tài)提示,并告知解決方案,使其有路可退。
要杜絕異常狀態(tài)下,用戶莫名其妙又無處可去,停滯在某一個頁面的情況。上文中所提到的模態(tài)對話框和結(jié)果頁面都可作為異常狀態(tài)的提醒方式。除此之外,在表單頁面中尤其是表單項較多的頁面中,還應(yīng)明確指出出錯項目,以便用戶修改。
異常狀態(tài)——表單出錯
表單報錯,在表單頂部告知錯誤原因,并標(biāo)識出錯誤字段提示用戶修改。
便捷優(yōu)雅
從PC時代的物理鍵盤鼠標(biāo)到移動端時代手指,雖然輸入設(shè)備極大精簡,但是手指操作的準(zhǔn)確性卻大大不如鍵盤鼠標(biāo)精確。為了適應(yīng)這個變化,需要開發(fā)者在設(shè)計過程中充分利用手機特性,讓用戶便捷優(yōu)雅的操控界面。
減少輸入
由于手機鍵盤區(qū)域小且密集,輸入困難的同時還易引起輸入錯誤,因此在設(shè)計小程序頁面時因盡量減少用戶輸入,利用現(xiàn)有接口或其他一些易于操作的選擇控件來改善用戶輸入的體驗。
例如下圖中,在添加銀行卡時,采用攝像頭識別接口來幫助用戶輸入。除此之外微信團隊還對外開放例如地理位置接口等多種微信小程序接口 ,充分利用這些接口將大大提高用戶輸入的效率和準(zhǔn)確性,進而優(yōu)化體驗。
除了利用接口外,在不得不讓用戶進行手動輸入時,應(yīng)盡量讓用戶做選擇而不是鍵盤輸入。一方面,回憶易于記憶,讓用戶在有限的選項中做選擇通常來說是容易于完全靠記憶輸入;另一方面,仍然是考慮到手機鍵盤密集的單鍵輸入極易造成輸入錯誤。 例如圖中,在用戶搜索時提供搜索歷史快捷選項將幫助用戶快速進行搜索,而減少或避免不必要是鍵盤輸入。
避免誤操作
因為在手機上我們通過手指觸摸屏幕來操控界面,手指的點擊精確度遠不如鼠標(biāo),因此在設(shè)計頁面上需點擊的控件時,需要充分考慮到其熱區(qū)面積,避免由于可點擊區(qū)域過小或過于密集而造成誤操作。當(dāng)簡單的將原本在電腦屏幕上使用的界面不做任何適配直接移植到手機上時,往往就容易出現(xiàn)這樣的問題。由于手機屏幕分辨率各不相同,因此最適宜點擊像素尺寸也不完全一致,但換算成物理尺寸后大致是在7mm-9mm之間。在微信提供的標(biāo)準(zhǔn)組件庫中,各種控件元素均已考慮到了頁面點擊效果以及不同屏幕的適配,因此再次推薦使用或模仿標(biāo)準(zhǔn)控件尺寸進行設(shè)計。
利用接口提升性能
微信設(shè)計中心已推出了一套網(wǎng)頁標(biāo)準(zhǔn)控件庫,包括 sketch設(shè)計控件庫 和 Photoshop設(shè)計控件庫,后續(xù)還將完善小程序組件,這些控件都已充分考慮了移動端頁面的特點,能夠保證其在移動端頁面上的可用性和操作性能; 同時微信開發(fā)團隊也在不斷完善和擴充微信小程序接口,并提供微信公共庫,利用這些資源不但能夠為用戶提供更加快捷的服務(wù),而且對頁面性能的提高有極大作用,無形之中提升了用戶體驗。
統(tǒng)一穩(wěn)定
除了以上所提到的種種原則,建議接入微信的小程序還應(yīng)該時刻注意不同頁面間的統(tǒng)一性和延續(xù)性,在不同的頁面盡量使用一致的控件和交互方式。
統(tǒng)一的頁面體驗和有延續(xù)性的界面元素都將幫助用最少的學(xué)習(xí)成本達成使用目標(biāo),減輕頁面跳動所造成的不適感。正因如此,小程序可根據(jù)需要使用微信提供的標(biāo)準(zhǔn)控件,以達到統(tǒng)一穩(wěn)定的目的。
視覺規(guī)范
字體規(guī)范
微信內(nèi)字體的使用與所運行的系統(tǒng)字體保持一致,常用字號為20, 18, 17, 16,14 13, 11(pt),使用場景具體如下:
字體顏色
主內(nèi)容 Black 黑色,次要內(nèi)容 Grey 灰色;時間戳與表單缺省值 Light 灰色;大段的說明內(nèi)容而且屬于主要內(nèi)容用 Semi 黑。
藍色為鏈接用色,綠色為完成字樣色,紅色為出錯用色 Press 與 Disable 狀態(tài)分別降低透明度為20%與10%。
列表視覺規(guī)范
表單輸入視覺規(guī)范
怎么自己制作微信小程序
如何制作微信小程序,首先我們需要從他的構(gòu)成確定,微信小程序的制作需要的點有三個:設(shè)計、前端、后端。而相對簡單的微信小程序可能只需要設(shè)計、前端。
小程序制作所涉及到的設(shè)計:頁面的排版和美觀UI這些內(nèi)容都是需要設(shè)計的,所以這個是需要你熟悉設(shè)計內(nèi)容,用到的軟件是 PS,專業(yè)點還有 原型圖制作軟件:Mockplus 。
小程序制作的前端:設(shè)計排版和UI完成后需要前端工程師將其進行編程實現(xiàn)。所以你需要一個前端工具,微信自身是提供一個開發(fā)軟件的
或者你也可以使用其他的前端語言進行開發(fā),然后選擇自己熟悉的編輯器。列舉幾個使用比較多的軟件:sublime text3 編輯器 、Beyond Compare 比較代碼工具、EditPlus 編輯器。
小程序制作需要用到的后端:前端完成后,如果你需要有些交互的功能則需要后端,當(dāng)然后端也可以不要,純展示或者簡單交互的話前端就可以完成的,比較復(fù)雜業(yè)務(wù)和邏輯的內(nèi)容才會需要后端,因此后端的內(nèi)容會比較南。一般后端開發(fā)所使用的軟件就是idea了,本人就是一位Java程序員,專攻后端。用上后端意味著你還需要域名DNS和服務(wù)器等等的知識去支撐。所以后端一般用的軟件是:idea、Linux服務(wù)器、ftp(Windows與Linux之間的傳輸軟件)、xshell(這個比上一個好用一些,同樣的傳輸文件作用)、數(shù)據(jù)庫等等。
總結(jié): 簡單版:一個設(shè)計工具 + 一個微信自帶的前端編輯器。 中等:設(shè)計工具 + 其他語言編輯器 +微信編輯器。 復(fù)雜: 設(shè)計工具+ 前端工具+后端工具。
微信小程序的正常流程:
1.注冊小程序
2.開發(fā)前準(zhǔn)備
3.下載開發(fā)者工具開始制作
4.提交代碼
5.審核通過即可使用
軟件只需要一個:微信開發(fā)者工具(如果用第三方平臺的編輯器就不需要下載這個軟件開發(fā)小程序)
個人小程序建議自己寫代碼,因為每個人的想法都天馬星空,想展示的東西也不一樣,還有個性化需求,很難做出符合要求的小程序。所以自己制作很自由,慢慢做出自己滿意的效果。缺點就是,需要學(xué)習(xí)的東西很多。
商城小程序推薦直接用第三方的編輯器,因為不用學(xué)習(xí)新的知識,操作簡單,花費時間很短,發(fā)布幾個商品,編輯好小程序,提交審核就可以正常使用。需要準(zhǔn)備:營業(yè)執(zhí)照一張。
分步制作一個可以正常使用的微信小程序
這里介紹兩種方法,自己開發(fā)的制作流程和通過第三方平臺的制作流程。
自己開發(fā)
1.注冊
普通的注冊步驟就點立即注冊,跟公眾號登錄是同一個入口。
點“2”指向的地方-小程序圖標(biāo),是小程序開發(fā)文檔,底部也有注冊小程序的入口,點擊進入注冊。
認(rèn)證郵箱
個人小程序和商城小程序
這一步你要選類型,是要開通個人,還是開通企業(yè)?
小程序類型選擇-輕棧截圖
如果這個小程序僅僅是展示用的小程序,那類型選擇個人就好了,免認(rèn)證費。
如果是商家,想要小程序帶有支付系統(tǒng),制作一個商城小程序,那就選擇用企業(yè)/組織認(rèn)證。通過這種方式開通的小程序需要300認(rèn)證費。
但如果你擁有一個認(rèn)證過的企業(yè)類型公眾號,可快速注冊并注冊小程序。
復(fù)用公眾號資質(zhì)注冊小程序
在公眾號后臺操作,點擊小程序管理小程序快速認(rèn)證小程序。
2.開發(fā)前準(zhǔn)備
1.綁定開發(fā)者
2.設(shè)置開發(fā)設(shè)置,獲取AppID
3.發(fā)布流程
需要下載的軟件--開發(fā)者工具
開發(fā)過程中有任何問題,可以參考微信文檔
通過第三方-零成本開通微信小程序商城
完全零基礎(chǔ)想要搭建一個微信小程序商城,有簡化了的步驟,不需要代碼,拖拽式模塊化設(shè)計,支付系統(tǒng),營銷插件統(tǒng)統(tǒng)支持。
同樣零成本,甚至連小程序300認(rèn)證費都可以免去。開發(fā)完成的小程序商城審核通過就可以立即投入運營。
通過輕棧注冊微信小程序,沒有公眾號也可以直接免300認(rèn)證費注冊微信小程序。
注冊成功后不需要開發(fā)前準(zhǔn)備,直接制作,拖拽式編輯,按住鼠標(biāo)左鍵,把需要的模塊拉到合適的位置,松手,右鍵編輯。
輕?!綝esign Lab】編輯頁面
上架商品在電商系統(tǒng)
輕棧電商系統(tǒng)
一切準(zhǔn)備就緒,就可以發(fā)布了,如果商品數(shù)量10個左右,整個制作過程約30分鐘。同樣的商城小程序效果,同樣的0成本,使用第三方可以節(jié)省很多時間和精力。
但模塊化,拖拽式的編輯器滿足不了所有商家的需求,功能再豐富也不可能100%覆蓋所有行業(yè),要做出特別的效果,自己搞不定,第三方編輯器不好實現(xiàn),那就找專業(yè)團隊去做吧。
微信小程序怎么開發(fā) 微信小程序開發(fā)教程分享
微信應(yīng)用號(小程序,「應(yīng)用號」的新稱呼)終于來了!
目前還處于內(nèi)測階段,微信只邀請了部分企業(yè)參與封測。想必大家都關(guān)心應(yīng)用號的最終形態(tài)到底是什么樣子?怎樣將一個「服務(wù)號」改造成為「小程序」?
我們暫時以一款簡單的第三方工具的實例,來演示一下開發(fā)過程吧。
序言
開始開發(fā)應(yīng)用號之前,先看看官方公布的「小程序」教程吧?。ㄒ韵聝?nèi)容來自微信官方公布的「小程序」開發(fā)指南)
本文檔將帶你一步步創(chuàng)建完成一個微信小程序,并可以在手機上體驗該小程序的實際效果。這個小程序的首頁將會顯示歡迎語以及當(dāng)前用戶的微信頭像,點擊頭像,可以在新開的頁面中查看當(dāng)前小程序的啟動日志。
1. 獲取微信小程序的 AppID
首先,我們需要擁有一個帳號,如果你能看到該文檔,我們應(yīng)當(dāng)已經(jīng)邀請并為你創(chuàng)建好一個帳號。注意不可直接使用服務(wù)號或訂閱號的 AppID。 利用提供的帳號,登錄 ,就可以在網(wǎng)站的「設(shè)置」-「開發(fā)者設(shè)置」中,查看到微信小程序的 AppID 了。
注意:如果我們不是用注冊時綁定的管理員微信號,在手機上體驗該小程序。那么我們還需要操作「綁定開發(fā)者」。即在「用戶身份-開發(fā)者」模塊,綁定上需要體驗該小程序的微信號。本教程默認(rèn)注冊帳號、體驗都是使用管理員微信號。
2. 創(chuàng)建項目
我們需要通過開發(fā)者工具,來完成小程序創(chuàng)建和代碼編輯。
開發(fā)者工具安裝完成后,打開并使用微信掃碼登錄。選擇創(chuàng)建「項目」,填入上文獲取到的 AppID,設(shè)置一個本地項目的名稱(非小程序名稱),比如「我的第一個項目」,并選擇一個本地的文件夾作為代碼存儲的目錄,點擊「新建項目」就可以了。
為方便初學(xué)者了解微信小程序的基本代碼結(jié)構(gòu),在創(chuàng)建過程中,如果選擇的本地文件夾是個空文件夾,開發(fā)者工具會提示,是否需要創(chuàng)建一個 quick start 項目。選擇「是」,開發(fā)者工具會幫助我們在開發(fā)目錄里生成一個簡單的 demo。
項目創(chuàng)建成功后,我們就可以點擊該項目,進入并看到完整的開發(fā)者工具界面,點擊左側(cè)導(dǎo)航,在「編輯」里可以查看和編輯我們的代碼,在「調(diào)試」里可以測試代碼并模擬小程序在微信客戶端效果,在「項目」里可以發(fā)送到手機里預(yù)覽實際效果。
3. 編寫代碼
點擊開發(fā)者工具左側(cè)導(dǎo)航的「編輯」,我們可以看到這個項目,已經(jīng)初始化并包含了一些簡單的代碼文件。最關(guān)鍵也是必不可少的,是 app.js、app.json、app.wxss 這三個。其中,.js 后綴的是腳本文件,.json 后綴的文件是配置文件,.wxss 后綴的是樣式表文件。微信小程序會讀取這些文件,并生成小程序?qū)嵗?/p>
下面我們簡單了解這三個文件的功能,方便修改以及從頭開發(fā)自己的微信小程序。
app.js 是小程序的腳本代碼。我們可以在這個文件中監(jiān)聽并處理小程序的生命周期函數(shù)、聲明全局變量。調(diào)用 MINA 提供的豐富的 API,如本例的同步存儲及同步讀取本地數(shù)據(jù)。
//app.js App({
onLaunch: function () { //調(diào)用API從本地緩存中獲取數(shù)據(jù) var logs = wx.getStorageSync('logs') || []
logs.unshift(Date.now())
wx.setStorageSync('logs', logs)
},
getUserInfo:function(cb){ var that = this; if(this.globalData.userInfo){ typeof cb == "function" cb(this.globalData.userInfo)
}else{ //調(diào)用登錄接口 wx.login({
success: function () {
wx.getUserInfo({
success: function (res) {
that.globalData.userInfo = res.userInfo; typeof cb == "function" cb(that.globalData.userInfo)
}
})
}
});
}
},
globalData:{
userInfo:null }
})
app.json 是對整個小程序的全局配置。我們可以在這個文件中配置小程序是由哪些頁面組成,配置小程序的窗口 背景色,配置導(dǎo)航條樣式,配置默認(rèn)標(biāo)題。注意該文件不可添加任何注釋。
{ "pages":[ "pages/index/index", "pages/logs/logs" ], "window":{ "backgroundTextStyle":"light", "navigationBarBackgroundColor": "#fff", "navigationBarTitleText": "WeChat", "navigationBarTextStyle":"black" }
}
app.wxss 是整個小程序的公共樣式表。我們可以在頁面組件的class屬性上直接使用app.wxss中聲明的樣式規(guī)則。
/**app.wxss**/ .container { height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: space-between; padding: 200rpx 0; box-sizing: border-box;
}
3. 創(chuàng)建頁面
在這個教程里,我們有兩個頁面,index 頁面和 logs 頁面,即歡迎頁和小程序啟動日志的展示頁,他們都在 pages 目錄下。微信小程序中的每一個頁面的【路徑+頁面名】都需要寫在 app.json 的 pages 中,且 pages 中的第一個頁面是小程序的首頁。
每一個小程序頁面是由同路徑下同名的四個不同后綴文件的組成,如:index.js、index.wxml、index.wxss、index.json。.js 后綴的文件是腳本文件,.json 后綴的文件是配置文件,.wxss 后綴的是樣式表文件,.wxml 后綴的文件是頁面結(jié)構(gòu)文件。
index.wxml是頁面的結(jié)構(gòu)文件:
view class="cb953afc9f248302 container" view bindtap="bindViewTap" class="3afc9f248302aeda userinfo" image class="9f248302aeda08c6 userinfo-avatar" src="{{userInfo.avatarUrl}}" background-size="cover" image text class="59cf2f661b9666cc userinfo-nickname"{{userInfo.nickName}} text view view class="2f661b9666cc82fe usermotto" text class="1b9666cc82fee244 user-motto"{{motto}} text view view
本例中使用了、、來搭建頁面結(jié)構(gòu),綁定數(shù)據(jù)和交互處理函數(shù)。
index.js 是頁面的腳本文件,在這個文件中我們可以監(jiān)聽并處理頁面的生命周期函數(shù)、獲取小程序?qū)嵗暶鞑⑻幚頂?shù)據(jù),響應(yīng)頁面交互事件等。
//index.js //獲取應(yīng)用實例 var app = getApp()
Page({
data: {
motto: 'Hello World',
userInfo: {}
}, //事件處理函數(shù) bindViewTap: function() {
wx.navigateTo({
url: '../logs/logs' })
},
onLoad: function () { console.log('onLoad') var that = this //調(diào)用應(yīng)用實例的方法獲取全局?jǐn)?shù)據(jù) app.getUserInfo(function(userInfo){ //更新數(shù)據(jù) that.setData({
userInfo:userInfo
})
})
}
})
index.wxss是頁面的樣式表:
/**index.wxss**/ .userinfo { display: flex; flex-direction: column; align-items: center;
} .userinfo-avatar { width: 128rpx; height: 128rpx; margin: 20rpx; border-radius: 50%;
} .userinfo-nickname { color: #aaa;
} .usermotto { margin-top: 200px;
}
頁面的樣式表是非必要的。當(dāng)有頁面樣式表時,頁面的樣式表中的樣式規(guī)則會層疊覆蓋 app.wxss 中的樣式規(guī)則。如果不指定頁面的樣式表,也可以在頁面的結(jié)構(gòu)文件中直接使用 app.wxss 中指定的樣式規(guī)則。
index.json是頁面的配置文件:
頁面的配置文件是非必要的。當(dāng)有頁面的配置文件時,配置項在該頁面會覆蓋 app.json 的 window 中相同的配置項。如果沒有指定的頁面配置文件,則在該頁面直接使用 app.json 中的默認(rèn)配置。
logs的頁面結(jié)構(gòu)
view class="66cc82fee2448db8 container log-list" block wx:for-items="{{logs}}" wx:for-item="log" text class="82fee2448db874bf log-item"{{index + 1}}. {{log}} text block view
logs 頁面使用 控制標(biāo)簽來組織代碼,在 上使用 wx:for-items 綁定 logs 數(shù)據(jù),并將 logs 數(shù)據(jù)循環(huán)展開節(jié)點
//logs.js var util = require('../../utils/util.js')
Page({
data: {
logs: []
},
onLoad: function () { this.setData({
logs: (wx.getStorageSync('logs') || []).map(function (log) { return util.formatTime(new Date(log))
})
})
}
})
運行結(jié)果如下:
4. 手機預(yù)覽
開發(fā)者工具左側(cè)菜單欄選擇「項目」,點擊「預(yù)覽」,掃碼后即可在微信客戶端中體驗。
目前,預(yù)覽和上傳功能尚無法實現(xiàn),需要等待微信官方的下一步更新。
如你所見,微信官方給出的開發(fā)指南還非常簡單,很多細節(jié)、代碼和功能都沒有明確的展示,所以接下來就到展示實力的時候啦!開發(fā)教程正式開始!
第一章:準(zhǔn)備工作
做好準(zhǔn)備工作很重要。開發(fā)一個微信應(yīng)用號,你需要提前到微信的官方網(wǎng)站(weixin.qq.com)下載開發(fā)者工具。
1. 下載最新微信開發(fā)者工具,打開后你會看到該界面:
2. 點擊「新建 web+」項目,隨后出現(xiàn)如下畫面:
3. 該頁面內(nèi)的各項內(nèi)容需要注意——
AppID:依照官方解釋來填。
Appname: 項目最外層文件夾名稱,如你將其命名為「ABC」,則之后的全部項目內(nèi)容均將保存在「/ABC/…」目錄下。
本地開發(fā)目錄:項目存放在本地的目錄。
注:再次強調(diào),如果你和團隊成員共同開發(fā)該項目,則建議你們使用同樣的目錄名稱及本地目錄,以確保協(xié)同開發(fā)的統(tǒng)一性。如果你之前已有項目,則導(dǎo)入過程與以上內(nèi)容近似,不再贅述。
4. 準(zhǔn)備工作全部完成后,點擊「新建項目」按鈕,彈出框點「確定」。
5. 如上圖所示,此刻,微信開發(fā)者工具已經(jīng)為你自動構(gòu)建了一個初始的 demo 項目,該項目內(nèi)包含了一個微信應(yīng)用項目所需具備的基本內(nèi)容和框架結(jié)構(gòu)。點擊項目名稱(圖中即「cards」)進入該項目,就能看到整個項目的基本架構(gòu)了:
第二章:項目構(gòu)架
微信目前用戶群體非常龐大,微信推出公眾號以后,火爆程度大家都看得到,也同樣推動著 Html 5 的高速發(fā)展,隨著公眾號業(yè)務(wù)的需求越來越復(fù)雜,應(yīng)用號現(xiàn)在的到來也是恰到好處。
我們發(fā)現(xiàn),微信提供給開發(fā)者的方式也在發(fā)生全面的改變:從操作 DOM 轉(zhuǎn)為操作數(shù)據(jù),基于微信提供的一個過橋工具實現(xiàn)很多 Html 5 在公眾號很難實現(xiàn)的功能,有點類似于 hybrid 開發(fā),不同于 hybrid 開發(fā)的方式是:微信開放的接口更為嚴(yán)謹(jǐn),結(jié)構(gòu)必須采用他提供給的組件,外部的框架和插件都不能在這里使用上,讓開發(fā)者完全脫離操作 DOM,開發(fā)思想轉(zhuǎn)變很大。
工欲善其事,必先利其器。理解它的核心功能非常重要,先了解它的整個運作流程。
生命周期:
在index.js里面:
開發(fā)者工具上 Console 可以看到:
在首頁 console 可以看出順序是 App Launch--App Show--onLoad--onShow--onReady。
首先是整個 app 的啟動與顯示,app 的啟動在 app.js 里面可以配置,其次再進入到各個頁面的加載顯示等等。
可以想象到這里可以處理很多東西了,如加載框之類的都可以實現(xiàn)等等。
路由:
路由在項目開發(fā)中一直是個核心點,在這里其實微信對路由的介紹很少,可見微信在路由方面經(jīng)過很好的封裝,也提供三個跳轉(zhuǎn)方法。
wx.navigateTo(OBJECT):保留當(dāng)前頁面,跳轉(zhuǎn)到應(yīng)用內(nèi)的某個頁面,使用wx.navigateBack可以返回到原頁面。
wx.redirectTo(OBJECT):關(guān)閉當(dāng)前頁面,跳轉(zhuǎn)到應(yīng)用內(nèi)的某個頁面。
wx.navigateBack():關(guān)閉當(dāng)前頁面,回退前一頁面。
這三個基本上使用足夠,在路由方面微信封裝的很好,開發(fā)者根本不用去配置路由,往往很多框架在路由方面配置很繁瑣。
組件:
此次微信在組件提供方面也是非常全面,基本上滿足項目需求,故而開發(fā)速度非??欤_發(fā)前可以認(rèn)真瀏覽幾次,開發(fā)效率會很好。
其它:
任何外部框架以及插件基本上無法使用,就算原生的 js 插件也很難使用,因為以前的 js 插件也基本上全部是一操作 dom 的形式存在,而微信應(yīng)用號此次的架構(gòu)是不允許操作任何 dom,就連以前開發(fā)者們習(xí)慣使用的動態(tài)設(shè)置的rem.js也是不支持的。
此次微信還提供了 WebSocket,就可以直接利用它做聊天,可以開發(fā)的空間非常大。
跟公眾號對比發(fā)現(xiàn),開發(fā)應(yīng)用號組件化,結(jié)構(gòu)化,多樣化。新大陸總是充滿著驚喜,更多的彩蛋等著大家來發(fā)現(xiàn)。
接下來開始搞一些簡單的代碼了!
1. 找到項目文件夾,導(dǎo)入你的編輯器里面。在這里,我們使用了 Sublime Text 編輯器。你可以根據(jù)自己的開發(fā)習(xí)慣選擇自己喜歡的編輯器。
2. 接下來,你需要根據(jù)自己的項目內(nèi)容調(diào)整項目結(jié)構(gòu)。在范例項目中,「card_course」目錄下面主要包含了「tabBar」頁面以及該應(yīng)用的一些配置文件。
3. 示例項目的「tabBar」是五個菜單按鈕:
4. 找到「app.json」文件,用來配置這個五個菜單。在代碼行中找到「tabBar」:
你可以根據(jù)實際項目需求更改,其中:
「Color」是底部字體顏色,「selectedColor」是切換到該頁面高亮顏色,「borderStyle」是切換菜單上面的一條線的顏色,「backgroundColor」是底部菜單欄背景顏色。文字描述較為抽象,建議你一一調(diào)試并查看其效果,加深印象。
「list」下的代碼順序必須依次放置,不能隨便更改。
「pagePath」之后的文件名內(nèi),「.wxml」后綴被隱藏起來了,這是微信開發(fā)代碼中人性化的一點——幫你節(jié)約寫代碼的時間,無須頻繁聲明文件后綴。
「iconPath」為未獲得顯示頁面的圖標(biāo)路徑,這兩個路徑可以直接是網(wǎng)絡(luò)圖標(biāo)。
「selectedIconPath」為當(dāng)前顯示頁面高亮圖標(biāo)路徑,可以去掉,去掉之后會默認(rèn)顯示為「iconPath」的圖標(biāo)。
「Text」為頁面標(biāo)題,也可以去掉,去掉之后純顯示圖標(biāo),如只去掉其中一個,該位置會被占用。
注意:微信的底部菜單最多支持五欄(五個 icons),所以在你設(shè)計微信應(yīng)用的 UI 和基本架構(gòu)時就要預(yù)先考慮好菜單欄的排布。
5. 根據(jù)以上代碼規(guī)則,我們做好了示例項目的基本架構(gòu),供你參考:
6. 「Json」文件配置好后,「card_course」的基本結(jié)構(gòu)入上圖所示,不需要的子集都可以暫時刪除,缺少的子集則需要你主動新建。刪除子集時記得順帶檢查一下「app.json」里的相關(guān)內(nèi)容是否已經(jīng)一并刪除。
注意:個人建議你新建一個「wxml」文件的同時,把對應(yīng)的「js」和「wxss」文件一起新建好,因為微信應(yīng)用號的配置特點就是解析到一個「wxml」文件時,會同時在同級目錄下找到同文件名的「js」和「wxss」文件,所以「js」文件需及時在「app.json」里預(yù)先配置好。
編寫「wxml」時,根據(jù)微信應(yīng)用號提供的接口編碼即可,大部分就是以前的「div」,而現(xiàn)在就用「view」即可。需要用其它子集時,可以根據(jù)微信提供的接口酌情選擇。
使用「class」名來設(shè)置樣式,「id」名在這里基本沒有什么用處。主要操作數(shù)據(jù),不操作「dom」。
7. 以上是示例項目首頁的「wxml」編碼。從圖中就可以看出,實現(xiàn)一個頁面代碼量非常少。
8. 「Wxss」文件是引入的樣式文件,你也可以直接在里面寫樣式,示例中采用的是引入方式:
9. 修改代碼后刷新一次,可以看到未設(shè)背景的「view」標(biāo)簽直接變成了粉色。
注意:修改「wxml」和「wxss」下的內(nèi)容后,直接 F5 刷新就能直接看到效果,修改「js」則需點擊重啟按鈕才能看到效果。
10. 另外,公共樣式可以在「app.wxss」里直接引用。
11. 「Js」文件需要在「app.json」文件的「page」里預(yù)先配置好。為了項目結(jié)構(gòu)清晰化,在示例項目中的「index」首頁同級目錄新建其它四個頁面文件,具體如下:
經(jīng)過以上步驟,案例中的五個底部菜單就全部配置完畢了。
如果你要入門的話,首先要掌握 js、html、css 知識。
然后可以通過查看微信公眾平臺中的微信小程序開發(fā)教程來大概了解微信小程序的開發(fā)方式和調(diào)試方式, 官方的介紹還是比較簡單易懂的。
另外可以通過入門級的帖子 來了解具體開發(fā)流程。
以上~~
希望能給你一些幫助,希望采納·
關(guān)于微信小程序開發(fā)文檔圖標(biāo)和微信小程序開發(fā)文檔圖標(biāo)不顯示的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。