微信小程序開發(fā)文檔介紹(微信小程序開發(fā)手冊(cè))
今天給各位分享微信小程序開發(fā)文檔介紹的知識(shí),其中也會(huì)對(duì)微信小程序開發(fā)手冊(cè)進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!
微信小程序開發(fā)手冊(cè)(配置和視圖層)
官網(wǎng):
微信小程序的優(yōu)勢(shì):
一是微信有海量用戶,而且粘性很高,在微信里開發(fā)產(chǎn)品更容易觸達(dá)用戶;
二是推廣app 或公眾號(hào)的成本太高。
三是開發(fā)適配成本低。
四是容易小規(guī)模試錯(cuò),然后快速迭代。
五是跨平臺(tái)。
登陸成功:
app.json 是當(dāng)前小程序的全局配置,包括了小程序的所有頁(yè)面路徑、界面表現(xiàn)、網(wǎng)絡(luò)超時(shí)時(shí)間、底部 tab 等。 普通快速啟動(dòng)項(xiàng)目 里邊的 app.json 配置.
字段的含義
這里的 page.json 其實(shí)用來(lái)表示頁(yè)面目錄下的 page.json 這類和小程序頁(yè)面相關(guān)的配置。
開發(fā)者可以獨(dú)立定義每個(gè)頁(yè)面的一些屬性,如頂部顏色、是否允許下拉刷新等等。
頁(yè)面的配置只能設(shè)置 app.json 中部分 window 配置項(xiàng)的內(nèi)容,頁(yè)面中配置項(xiàng)會(huì)覆蓋 app.json 的 window 中相同的配置項(xiàng)。
WXML(WeiXin Markup Language)是框架設(shè)計(jì)的一套標(biāo)簽語(yǔ)言,結(jié)合 基礎(chǔ)組件 、 事件系統(tǒng) ,可以構(gòu)建出頁(yè)面的結(jié)構(gòu)。
.wxml文件下
.js文件Page模塊下
不要直接寫 checked="false",其計(jì)算結(jié)果是一個(gè)字符串
ps:花括號(hào)和引號(hào)之間如果有空格,將最終被解析成為字符串.
項(xiàng)的變量名默認(rèn)為 item wx:for-item 可以指定數(shù)組當(dāng)前元素的變量名
下標(biāo)變量名默認(rèn)為 index wx:for-index 可以指定數(shù)組當(dāng)前下標(biāo)的變量名
渲染一個(gè)包含多節(jié)點(diǎn)的結(jié)構(gòu)塊 block最終不會(huì)變成真正的dom元素
配合 wx:for 使用,用于提高效率。建議寫上。
類似 wx:if
頻繁切換 用 hidden
不常使用 用 wx:if
如何快速開發(fā)個(gè)微信小程序
無(wú)論是前端開發(fā),還是后端開發(fā),時(shí)間長(zhǎng)了,你總會(huì)能總結(jié)出它的一些規(guī)律的,對(duì)于前端開發(fā)主要就兩條,頁(yè)面展現(xiàn),邏輯處理。如果是全流程開發(fā)的話,那就是,如何創(chuàng)建項(xiàng)目,頁(yè)面如何實(shí)現(xiàn),數(shù)據(jù)獲取和邏輯處理如何實(shí)現(xiàn),如何打包上線。移動(dòng)端或者前端,基本開發(fā)流程就這個(gè)四個(gè)步驟。所以在在前端方面去學(xué)習(xí)新一門開發(fā)技術(shù),只要你解決了這四個(gè)問題,那一切就OK了,下面我就講一下,我在學(xué)習(xí)微信小程序開發(fā),如何用這四步法快速上手開發(fā)的
學(xué)習(xí)一門新技術(shù)先看下它的開發(fā)文檔 小程序介紹
然后呢就是開始一些準(zhǔn)備的步驟,微信公眾平臺(tái)提供我們開發(fā)管理的功能 微信工作平臺(tái)
賬號(hào)注冊(cè)
小程序信息配置
請(qǐng)看 小程序開發(fā)步驟
小程序項(xiàng)目的創(chuàng)建
到此第一個(gè)問題我們就算完成了,接下來(lái)解決小程序界面如何搭建。
然后最重要的,微信提供自己的開發(fā)者工具,不需要用chrome什么調(diào)試, 微信開發(fā)者工具 提供wxapi的調(diào)用測(cè)試能力,這些在chrome里面是測(cè)試不了的
框架的視圖層由 WXML 與 WXSS 編寫,由組件來(lái)進(jìn)行展示。
將邏輯層的數(shù)據(jù)反應(yīng)成視圖,同時(shí)將視圖層的事件發(fā)送給邏輯層。
WXML(WeiXin Markup language) 用于描述頁(yè)面的結(jié)構(gòu)。
WXS(WeiXin Script) 是小程序的一套腳本語(yǔ)言,結(jié)合 WXML,可以構(gòu)建出頁(yè)面的結(jié)構(gòu)。
WXSS(WeiXin Style Sheet) 用于描述頁(yè)面的樣式。
小程序的頁(yè)面是由wxml 和wxss這兩個(gè)文件來(lái)實(shí)現(xiàn)的,wxml結(jié)構(gòu)如何寫請(qǐng)參考 微信小程序組件
wxss是負(fù)責(zé)樣式控制的,基本類似于css,支持flex布局,所以要想上手構(gòu)建微信小程序的界面,最好要熟悉html ,css.
還有最重要的就是生命周期了
//index.js
Page({
? data: {
? ? text: "This is page data."
? },
? onLoad: function(options) {
? ? // 頁(yè)面創(chuàng)建時(shí)執(zhí)行
? },
? onShow: function() {
? ? // 頁(yè)面出現(xiàn)在前臺(tái)時(shí)執(zhí)行
? },
? onReady: function() {
? ? // 頁(yè)面首次渲染完畢時(shí)執(zhí)行
? },
? onHide: function() {
? ? // 頁(yè)面從前臺(tái)變?yōu)楹笈_(tái)時(shí)執(zhí)行
? },
? onUnload: function() {
? ? // 頁(yè)面銷毀時(shí)執(zhí)行
? },
? onPullDownRefresh: function() {
? ? // 觸發(fā)下拉刷新時(shí)執(zhí)行
? },
? onReachBottom: function() {
? ? // 頁(yè)面觸底時(shí)執(zhí)行
? },
? onShareAppMessage: function () {
? ? // 頁(yè)面被用戶分享時(shí)執(zhí)行
? },
? onPageScroll: function() {
? ? // 頁(yè)面滾動(dòng)時(shí)執(zhí)行
? },
? onResize: function() {
? ? // 頁(yè)面尺寸變化時(shí)執(zhí)行
? },
? onTabItemTap(item) {
? ? // tab 點(diǎn)擊時(shí)執(zhí)行
? ? console.log(item.index)
? ? console.log(item.pagePath)
? ? console.log(item.text)
? },
? // 事件響應(yīng)函數(shù)
? viewTap: function() {
? ? this.setData({
? ? ? text: 'Set some data for updating view.'
? ? }, function() {
? ? ? // this is setData callback
? ? })
? },
? // 自由數(shù)據(jù)
? customData: {
? ? hi: 'MINA'
? }
})
微信提供的界面組件很多,沒必要一下子全學(xué)會(huì),會(huì)用一兩個(gè)就行,其他的遇到需要的時(shí)候現(xiàn)查先做,這樣又節(jié)約學(xué)習(xí)時(shí)間,又能夠加深理解。到此第二個(gè)問題我們解決了,下面看第三個(gè)問題,數(shù)據(jù)邏輯如何處理。
數(shù)據(jù)定義
數(shù)據(jù)展現(xiàn)
邏輯處理是通過js文件來(lái)操作的
一個(gè)服務(wù)僅僅只有界面展示是不夠的,還需要和用戶做交互:響應(yīng)用戶的點(diǎn)擊、獲取用戶的位置等等。在小程序里邊,我們就通過編寫?JS?腳本文件來(lái)處理用戶的操作。
view{{ msg }}/view
button bindtap="clickMe"點(diǎn)擊我/button
點(diǎn)擊?button?按鈕的時(shí)候,我們希望把界面上?msg?顯示成?"Hello World",于是我們?cè)?button?上聲明一個(gè)屬性:?bindtap?,在 JS 文件里邊聲明了?clickMe?方法來(lái)響應(yīng)這次點(diǎn)擊操作:
Page({
? clickMe: function() {
? ? this.setData({ msg: "Hello World" })
? }
})
響應(yīng)用戶的操作就是這么簡(jiǎn)單,更詳細(xì)的事件可以參考文檔? WXML - 事件 ?。
此外你還可以在 JS 中調(diào)用小程序提供的豐富的 API,利用這些 API 可以很方便的調(diào)起微信提供的能力,例如獲取用戶信息、本地存儲(chǔ)、微信支付等。在前邊的 QuickStart 例子中,在?pages/index/index.js?就調(diào)用了?wx.getUserInfo?獲取微信用戶的頭像和昵稱,最后通過?setData?把獲取到的信息顯示到界面上。更多 API 可以參考文檔? 小程序的API ?。
現(xiàn)在幾乎每個(gè)應(yīng)用都需要從后端獲取數(shù)據(jù),那么小程序如何獲取呢,當(dāng)然是通過網(wǎng)路操作了。我們封裝了小程序的網(wǎng)絡(luò)操作
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(關(guān)鍵字)
const remove = (url, options) = {
? return request(url, { method: 'DELETE', data: options })
}
module.exports = {
? gets,
? post,
? put,
? remove
}
如何使用請(qǐng)看下圖
數(shù)據(jù)獲取
數(shù)據(jù)展現(xiàn)如下圖
數(shù)據(jù)展現(xiàn)
到此,第三個(gè)問題我們就解決的了下面看第四個(gè)問題。
小程序發(fā)布文檔說明
小程序發(fā)布步驟
到此四個(gè)問題都解決了。
總結(jié):本文內(nèi)容是很簡(jiǎn)單的,借用了大部分官方文檔,其實(shí)本文目的不是教你學(xué)小程序開發(fā),而是分享一下在學(xué)習(xí)一項(xiàng)新事物我的方法和思路,互聯(lián)網(wǎng)技術(shù)變化是很快的,我覺得一個(gè)人的能力,不僅僅是你技術(shù)有多好,你要明白技術(shù)是用來(lái)干什么的,技術(shù)是用來(lái)解決現(xiàn)實(shí)生活中的問題的,一個(gè)好的程序員,不是技術(shù)能力,而是解決問題的能力,解決問題不可能只用一種技術(shù),這就要求你的學(xué)習(xí)能力要強(qiáng),針對(duì)不同的問題,使用不同的技術(shù),哪怕使用的技術(shù)你不熟悉,但它是解決問題最好的方法,那就要求你有快速學(xué)習(xí)并解決問題的能力。
學(xué)習(xí)一項(xiàng)新技術(shù),我們要先抓住主線,把流程搞通了,以后再在工作中慢慢的熟悉和豐富對(duì)它細(xì)節(jié)的一些認(rèn)知,所以學(xué)一項(xiàng)東西前多問自己幾個(gè)問題,我學(xué)什么,我為什么學(xué),我怎么學(xué),等。先思考后學(xué)習(xí),一定會(huì)讓你事半功倍。
對(duì)于怎么學(xué)習(xí)微信小程序開發(fā),我問了自己上面的四個(gè)問題,每個(gè)問題,我只需要了解大體內(nèi)容,四個(gè)問題都解決了,然后整個(gè)流程也就通了,以后也就是慢慢的對(duì)每個(gè)問題內(nèi)容的細(xì)節(jié)慢慢的熟悉和了解了,其實(shí)花了不到一下午的時(shí)間,我就搞出了一個(gè)簡(jiǎn)單的demo出來(lái)了,了解的內(nèi)容基本已經(jīng)覆蓋微信小程序日常開發(fā)80%的內(nèi)容了。以上就是我的一點(diǎn)學(xué)習(xí)心得。
最后 小程序Demo
Demo截圖
首頁(yè)
我的
點(diǎn)擊我的任意條目,數(shù)據(jù)是從第三方聚合平臺(tái)提供的api獲取的
最后目前有很多的多端開發(fā)框架,背景大多是都是因?yàn)樾〕绦蜷_發(fā)的盛行
其他還有很多例如
阿里的rax
我們自己的ditto
微信小程序怎么開發(fā)
微信版本升級(jí)后,打開微信,點(diǎn)擊底部的“發(fā)現(xiàn)”這個(gè)菜單項(xiàng),就會(huì)發(fā)現(xiàn)升級(jí)后的“發(fā)現(xiàn)”菜單里,增加了“小程序”這樣一個(gè)功能。
2.點(diǎn)擊打開小程序后,可以看到有附近的小程序和我的小程序,附近的小程序是所在定位周邊的小程序。
下面的小程序列表可以看到的是我們之前打開過的一些小程序,如果有自己覺得很好用的小程序就可以點(diǎn)擊左上角,添加到我的小程序里面。
3.微信小程序還有具有搜索功能,打開搜索頁(yè)面可以輸入想要找的小程序。
關(guān)于微信小程序開發(fā)文檔介紹和微信小程序開發(fā)手冊(cè)的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。