微信小程序開發總結文檔(微信小程序開發總結文檔怎么寫)
本篇文章給大家談談微信小程序開發總結文檔,以及微信小程序開發總結文檔怎么寫對應的知識點,希望對各位有所幫助,不要忘了收藏本站喔。
本文目錄一覽:
小程序開發所有的流程?
小程序開發流程其實很簡單,如下:
1、微信小程序注冊
在微信公眾平臺注冊小程序,完成注冊后可以同步進行信息完善和開發。
2、微信小程序信息完善
填寫小程序基本信息,包括名稱、頭像、介紹及服務范圍等。
3、微信小程序開發
完成小程序開發者綁定、開發信息配置后,開發者可下載開發者工具、參考開發文檔進行小程序的開發和調試?!?/p>
4、測試
在軟件設計完成之后要進行嚴密的測試,一發現軟件在整個軟件設計過程中存在的問題并加以糾正??梢允情_發人員內部測試(內測)或者交給客戶的公開測試(公測) 。整個測試階段分為單元測試、組裝測試、系統測試三個階段進行。
5、微信小程序提交審核和發布
完成小程序開發后,提交代碼至微信團隊審核,審核通過后即可發布(公測期間不能發布)。
如何快速開發個微信小程序
無論是前端開發,還是后端開發,時間長了,你總會能總結出它的一些規律的,對于前端開發主要就兩條,頁面展現,邏輯處理。如果是全流程開發的話,那就是,如何創建項目,頁面如何實現,數據獲取和邏輯處理如何實現,如何打包上線。移動端或者前端,基本開發流程就這個四個步驟。所以在在前端方面去學習新一門開發技術,只要你解決了這四個問題,那一切就OK了,下面我就講一下,我在學習微信小程序開發,如何用這四步法快速上手開發的
學習一門新技術先看下它的開發文檔 小程序介紹
然后呢就是開始一些準備的步驟,微信公眾平臺提供我們開發管理的功能 微信工作平臺
賬號注冊
小程序信息配置
請看 小程序開發步驟
小程序項目的創建
到此第一個問題我們就算完成了,接下來解決小程序界面如何搭建。
然后最重要的,微信提供自己的開發者工具,不需要用chrome什么調試, 微信開發者工具 提供wxapi的調用測試能力,這些在chrome里面是測試不了的
框架的視圖層由 WXML 與 WXSS 編寫,由組件來進行展示。
將邏輯層的數據反應成視圖,同時將視圖層的事件發送給邏輯層。
WXML(WeiXin Markup language) 用于描述頁面的結構。
WXS(WeiXin Script) 是小程序的一套腳本語言,結合 WXML,可以構建出頁面的結構。
WXSS(WeiXin Style Sheet) 用于描述頁面的樣式。
小程序的頁面是由wxml 和wxss這兩個文件來實現的,wxml結構如何寫請參考 微信小程序組件
wxss是負責樣式控制的,基本類似于css,支持flex布局,所以要想上手構建微信小程序的界面,最好要熟悉html ,css.
還有最重要的就是生命周期了
//index.js
Page({
? data: {
? ? text: "This is page data."
? },
? onLoad: function(options) {
? ? // 頁面創建時執行
? },
? onShow: function() {
? ? // 頁面出現在前臺時執行
? },
? onReady: function() {
? ? // 頁面首次渲染完畢時執行
? },
? onHide: function() {
? ? // 頁面從前臺變為后臺時執行
? },
? onUnload: function() {
? ? // 頁面銷毀時執行
? },
? onPullDownRefresh: function() {
? ? // 觸發下拉刷新時執行
? },
? onReachBottom: function() {
? ? // 頁面觸底時執行
? },
? onShareAppMessage: function () {
? ? // 頁面被用戶分享時執行
? },
? onPageScroll: function() {
? ? // 頁面滾動時執行
? },
? onResize: function() {
? ? // 頁面尺寸變化時執行
? },
? onTabItemTap(item) {
? ? // tab 點擊時執行
? ? console.log(item.index)
? ? console.log(item.pagePath)
? ? console.log(item.text)
? },
? // 事件響應函數
? viewTap: function() {
? ? this.setData({
? ? ? text: 'Set some data for updating view.'
? ? }, function() {
? ? ? // this is setData callback
? ? })
? },
? // 自由數據
? customData: {
? ? hi: 'MINA'
? }
})
微信提供的界面組件很多,沒必要一下子全學會,會用一兩個就行,其他的遇到需要的時候現查先做,這樣又節約學習時間,又能夠加深理解。到此第二個問題我們解決了,下面看第三個問題,數據邏輯如何處理。
數據定義
數據展現
邏輯處理是通過js文件來操作的
一個服務僅僅只有界面展示是不夠的,還需要和用戶做交互:響應用戶的點擊、獲取用戶的位置等等。在小程序里邊,我們就通過編寫?JS?腳本文件來處理用戶的操作。
view{{ msg }}/view
button bindtap="clickMe"點擊我/button
點擊?button?按鈕的時候,我們希望把界面上?msg?顯示成?"Hello World",于是我們在?button?上聲明一個屬性:?bindtap?,在 JS 文件里邊聲明了?clickMe?方法來響應這次點擊操作:
Page({
? clickMe: function() {
? ? this.setData({ msg: "Hello World" })
? }
})
響應用戶的操作就是這么簡單,更詳細的事件可以參考文檔? WXML - 事件 ?。
此外你還可以在 JS 中調用小程序提供的豐富的 API,利用這些 API 可以很方便的調起微信提供的能力,例如獲取用戶信息、本地存儲、微信支付等。在前邊的 QuickStart 例子中,在?pages/index/index.js?就調用了?wx.getUserInfo?獲取微信用戶的頭像和昵稱,最后通過?setData?把獲取到的信息顯示到界面上。更多 API 可以參考文檔? 小程序的API ?。
現在幾乎每個應用都需要從后端獲取數據,那么小程序如何獲取呢,當然是通過網路操作了。我們封裝了小程序的網絡操作
const app = getApp()
const request = (url, options) = {
? return new Promise((resolve, reject) = {
? ? wx.request({
? ? ? url: `${app.globalData.host}${url}`,
? ? ? method: options.method,
? ? ? data: options.method === 'GET' ? options.data : JSON.stringify(options.data),
? ? ? header: {
? ? ? ? 'Content-Type': 'application/json; charset=UTF-8'
? ? ? ? // 'x-token': 'x-token'? // 看自己是否需要
? ? ? },
? ? ? success(request) {
? ? ? ? if (request.data.error_code === 0) {
? ? ? ? ? resolve(request.data)
? ? ? ? } else {
? ? ? ? ? reject(request.data)
? ? ? ? }
? ? ? },
? ? ? fail(error) {
? ? ? ? reject(error.data)
? ? ? }
? ? })
? })
}
const gets = (url, options = {}) = {
? return request(url, { method: 'GET', data: options })
}
const post = (url, options) = {
? return request(url, { method: 'POST', data: options })
}
const put = (url, options) = {
? return request(url, { method: 'PUT', data: options })
}
// 不能聲明DELETE(關鍵字)
const remove = (url, options) = {
? return request(url, { method: 'DELETE', data: options })
}
module.exports = {
? gets,
? post,
? put,
? remove
}
如何使用請看下圖
數據獲取
數據展現如下圖
數據展現
到此,第三個問題我們就解決的了下面看第四個問題。
小程序發布文檔說明
小程序發布步驟
到此四個問題都解決了。
總結:本文內容是很簡單的,借用了大部分官方文檔,其實本文目的不是教你學小程序開發,而是分享一下在學習一項新事物我的方法和思路,互聯網技術變化是很快的,我覺得一個人的能力,不僅僅是你技術有多好,你要明白技術是用來干什么的,技術是用來解決現實生活中的問題的,一個好的程序員,不是技術能力,而是解決問題的能力,解決問題不可能只用一種技術,這就要求你的學習能力要強,針對不同的問題,使用不同的技術,哪怕使用的技術你不熟悉,但它是解決問題最好的方法,那就要求你有快速學習并解決問題的能力。
學習一項新技術,我們要先抓住主線,把流程搞通了,以后再在工作中慢慢的熟悉和豐富對它細節的一些認知,所以學一項東西前多問自己幾個問題,我學什么,我為什么學,我怎么學,等。先思考后學習,一定會讓你事半功倍。
對于怎么學習微信小程序開發,我問了自己上面的四個問題,每個問題,我只需要了解大體內容,四個問題都解決了,然后整個流程也就通了,以后也就是慢慢的對每個問題內容的細節慢慢的熟悉和了解了,其實花了不到一下午的時間,我就搞出了一個簡單的demo出來了,了解的內容基本已經覆蓋微信小程序日常開發80%的內容了。以上就是我的一點學習心得。
最后 小程序Demo
Demo截圖
首頁
我的
點擊我的任意條目,數據是從第三方聚合平臺提供的api獲取的
最后目前有很多的多端開發框架,背景大多是都是因為小程序開發的盛行
其他還有很多例如
阿里的rax
我們自己的ditto
微信小程序藍牙入坑總結
?? 微信小程序的藍牙流程按著官網的說明寫就可以了,具體參看文檔: 小程序開發文檔
坑列表:
??? 1.成對調用需要注意, wx.openBluetoothAdapter 與 wx.closeBluetoothAdapter
??????????????????????????????????????? wx.startBluetoothDevicesDiscovery 與 wx.stopBluetoothDevicesDiscovery
???? 2.安卓與IOS的區別:安卓可以根據藍牙標識直接連接,IOS則必須先搜索才能進行連接;
???? 3.權限問題:IOS的系統不能僅僅打開系統的藍牙權限,因為IOS新版本針對藍牙做了應用及的限制,因此需要給微信藍牙權限才可以使用;對于安卓系統,部分手機必須打開定位權限才能搜索到藍牙設備
???? 4.創建連接API( wx.createBLEConnection )調用失敗:
??????????? 超時報錯:{"errCode":10012,"errMsg":"createBLEConnection:fail:operate time out"}
??????????? 連接超時:{"errCode":10003,"errMsg":"createBLEConnection:fail connect time out."}
??????????? 連接失敗:{"errCode":10003,"errMsg":"createBLEConnection:fail:connection fail status:133"}
?????????? 基本都是安卓手機出現以上問題,針對這些報錯,需編寫重試連接操作,很大概率能解決此問題;
???? 5.搜索不到任何設備,安卓手機可能是定位權限的問題造成,蘋果手機基本就是設備出問題了
???? 6.網絡請求與藍牙請求盡量分開,因為藍牙連接會受到影響,造成一些異常信息;
???? 7.所有API調用針對fail函數最好都做一次重試,因為再次重試可能就會成功;、
???? 8.API調用之間最好有一定毫秒數的間隔,目前懷疑api部分機型會存在延時;
總之微信的藍牙連接就那些已知的接口,調用時多考慮異常的情況下的重試,簡單總結下,以便查閱。
???????????
????
微信小程序開發常用知識點
與iOS開發很相似,小程序的導航欄也可以全局設置一下,在公共文件app.json中設置了導航欄相關樣式如下:
這個地方是全局設置,如果想要在不同的頁面設置各自的標題屬性,只需要在該子級文件中設置
子頁面想調用共公js的方法,需先在子頁面js中先實例化app:具體過程如下
在需要調用的子頁面中,
如果是嵌套循環,很容易出現多個list和index,例如表視圖一樣,所以在小程序中可以重命名 list 和index 方法為:wx:for-index='重命名' wx:for-list="重命名"
在APP開發中,UI復用是一個很好的手段,在小程序上就是模板template。
在逛小程序聯盟的時候發現了一個大濕總結的比我好,搬過來一下。
微信小程序中,如果幾個頁面中需要引用同一個header/footer,當定義了公共模板時,有兩種引用方法如下:
方法一:在公共模板中定義template元素,利用 方法 ,這種方式只會顯示公共模板的template里面的內容,之外的內容不會顯示
** 方法二:**
總結:import方式和imclude方式的不同在于前者僅引用公共模板中的template里面的內容后者僅引用template以外的內容,顯而易見,include方式更簡單一些,在wxml中只需要一句話即可。
rpx單位是微信小程序中css的尺寸單位,rpx可以根據屏幕寬度進行自適應。規定屏幕寬為750rpx。如在 iPhone6 上,屏幕寬度為375px,共有750個物理像素,則750rpx = 375px = 750物理像素,1rpx = 0.5px。
具體的 這里有一片文章介紹的很詳細 , 還有這個
小程序的事件主要有:
小程序中的wxml中綁定事件有兩種:以touchtab為例 ,在wxml中必須有bind/catch不然無法實現上述事件
bindtouchtab和catchtouchtab bind的不會阻止事件冒泡(元素最里層到最外層函數執行),catch會阻止冒泡,只是冒泡到當前層結束
如果想在元素執行某事件時把元素的某個屬性傳到后臺 可在元素中加入data-屬性名稱=“xxx”,在事件函數中 function(event){}的event中的currentTarget里面的data-set里面可查看接收在元素中綁定的的id或者其他屬性clientX/Y 查看滑動手指距離屏幕左側的位置,查看滑動位置也可以通過touchstart和和touchend的clientx/y獲取
看到幾個別人寫的,瞬間石化,果斷收藏。
在小程序中,定義了一項工具文件utils,此文件的js旨在本文件之內有效,當其他子頁面想調用其中的js方法或者變量時,需要兩步驟:
1:在utils被調用的js文件中,面向對象的方式模型輸出: module.exports={要調用的函數名稱:要調用的函數名稱 };
2:在要調用的js文件中模塊化引入utils的js文件 var object=require("utils被調用的js文件地址"); 可以輸出一下object就能看到被調用的方法了;
例子如下:
要調用的js文件:
小程序的后臺獲取數據方式get/post具體函數格式如下:wx.request({})
如果屏幕中某元素的內容超過此元素的高度,可設置元素為scroll-view 為滾動狀態元素,這樣可以做到元素固定高度且元素內容滾動屏幕不滾動的效果;
scroll-view標簽的主要屬性分為以下幾種:
微信小程序廣告輪播元素 圖片所在元素/swiper-item
其中屬性有:
圖片更改事件:bindchange='imgchange' imagechange()的e.detail.current為當前顯示頁面的下標值
微信小程序開發總結文檔的介紹就聊到這里吧,感謝你花時間閱讀本站內容,更多關于微信小程序開發總結文檔怎么寫、微信小程序開發總結文檔的信息別忘了在本站進行查找喔。