摘要:官網訪問官網更快閱讀全部免費分享課程出品全網最新微信小程序基于最新版開發者工具之初中級培訓教程分享。
第一章:小程序初級入門教程 小試牛刀【含視頻】 視頻地址:https://v.qq.com/x/page/i0554akzobq.htmliKcamp官網:http://www.ikcamp.com
訪問官網更快閱讀全部免費分享課程:《iKcamp出品|全網最新|微信小程序|基于最新版1.0開發者工具之初中級培訓教程分享》。
包含:文章、視頻、源代碼
Step 1. 清理結構這一章節中,我們嘗試著寫一個最簡單的例子,包含 2 個靜態頁面,并增加菜單導航功能。小體驗一把。
清理后如下結構,只保留了兩個 必備 文件,同時做如下修改:
├── app.js ├── app.json
//app.js App({ onLaunch: function () { } })
{ "pages":[ ], "window":{ "navigationBarBackgroundColor": "#09ba07", "navigationBarTextStyle": "#fff", "navigationBarTitleText": "牛刀小試", "backgroundColor": "#fbf9fe", "backgroundTextStyle": "light" } }
修改后,看下控制臺有報錯信息,因為我們把頁面全都干掉了。
從報錯信息來看,很明顯,小程序默認會從 pages 字段中讀取第一個地址,作為首頁加載 -- 知識點。
Step 2. 增加 flex 頁面ok,現在開始添加我們的第一個頁面,給它起個名字叫 flex 吧,防止大家 誤以為名字叫 index 的才是默認打開的頁面 :)
增加 flex 頁面文件
├─ mypages/ │ ├─ flex/ │ ├─ flex.js // 空文件 │ ├─ flex.wxml // 空文件 │ ├─ flex.wxss // 空文件 ├── app.js ├── app.json
在 app.json 中增加 flex 頁面的配置地址
"pages":[ "mypages/flex/flex" ]
想要 flex 頁面生效,需要在 flex.js 中調用全局函數:
// flex.js Page({ })
Page() 函數接受一個 object 參數,其指定頁面的初始數據、生命周期函數、事件處理函數等。
這時候再看下顯示效果,已經沒有報錯信息了。
現在我們來實現一個簡單的 flex 布局效果,就像微信官方平臺展示的那個樣子:
首先,在 flex.wxml 文件中增加布局標簽:
flex-direction: row 1 2 3 flex-direction: column 1 2 3
然后在 flex.wxss 中,增加各 class 的樣式:
.section__title{ padding: 40rpx; } .flex-wrp{ display: flex; flex-direction: row; } .flex-row{ flex-direction: row; } .flex-col{ flex-direction: column; } .flex-item{ color: #fff; width: 200rpx; height: 200rpx; text-align: center; line-height: 200rpx; } .bc_green{ background-color: #09ba07; } .bc_red{ background-color: #f76160; } .bc_blue{ background-color: #0faeff; }
這里主要的東西就是關于 flex 的簡單布局,想了解更多關于 flex 的同學,可以查閱下 flex 布局教程
一般情況下,不同的頁面,都應該有一個獨特的 title,這就需要我們就給 flex 添加一個獨立的配置文件 flex.json:
{ "navigationBarTitleText": "Flex-布局" }
注意,與最外層的 app.json 不同的地方是,flex.json 是對全局配置 app.json 的補充,且只能覆蓋 app.json 的 window 字段配置信息
list 頁面,多少會比 flex 要復雜些。
剛進入到頁面時候,顯示沒有數據的提示信息。隨著用戶往下滑動,我們需要動態的增加數據,每下滑一次,增加 3 條數據吧,最多 30 條數據。
同樣的,先增加需要的文件:
├─ mypages/ │ ├─ flex/ │ ├─ flex.js │ ├─ flex.wxml │ ├─ flex.wxss │ ├─ flex.json │ ├─ list/ │ ├─ list.js │ ├─ list.wxml │ ├─ list.wxss ├── app.js ├── app.json
同時,我們對小程序增加一個 底部導航菜單,方便測試我們的頁面切換。
修改 app.json 文件:
{ "pages":[ "mypages/flex/flex", "mypages/list/list" ], "window": { "navigationBarBackgroundColor": "#09ba07", "navigationBarTextStyle": "#fff", "navigationBarTitleText": "牛刀小試", "backgroundColor": "#fbf9fe", "backgroundTextStyle": "light" }, "tabBar": { "color": "#999", "selectedColor": "#2EBF76", "borderStyle": "white", "backgroundColor": "#f6f8f9", "position": "bottom", "list": [{ "pagePath": "mypages/flex/flex", "text": "布局" }, { "pagePath": "mypages/list/list", "text": "列表" }] } }
我們先來實現 js 部分的邏輯,由于需要把數據顯示在視圖 wxml 中,我們需要增加 data 字段 :
Page({ data: { arrList: [] } })
這里說明下,wxml 中的動態數據均來自對應 Page 的 data。當 data 中的數據通過 this.setData 發生變化時候,視圖會隨之更新變化。
因為我們是在用戶下滑時候更新數據,這里我們調用下 onReachBottom 函數(當到達頁面底部時候觸發):
Page({ data: { arrList: [] }, //微信官方提供的事件處理函數,當頁面上拉觸底時候自動調用該函數 onReachBottom(){ console.log("到達頁面底部運行此函數") } })
然后我們開始增加數據的業務邏輯:
Page({ data: { arrList: [] }, onReachBottom(){ console.log("到達頁面底部運行此函數") this.updateArrList(); }, updateArrList(){ let arr = this.data.arrList arr.push( ...this.createData() ) this.setData({ arrList: arr }) }, createData(){ let length = this.data.arrList.length if(length >= 30 ) return []; return Array.from({length: 3},(v, i)=>`數據${1+i+length}`) } })
當頁面到達底部,會調用 onReachBottom 函數,在 onReachBottom 的最后,我們 尾調用 自定義的函數 updateArrList 來更新數據。
createData 函數的作用只是單純的返回包含 3 個元素的數組,最后拼接后的新數據,會通過 setData 更新數據 arrList,當數據更新后,視圖會自動更新。
接下來,我們修改視圖文件 list.wxml:
{{item}} 下拉加載數據
block 標簽并不屬于組件,不會在頁面中渲染,僅作接收控制屬性用
for 循環指令包裹的范圍內,子元素默認是 item,如果想重新定義它的名字,可以在 wx:for="{{arrList}}" 后面增加 wx:for-item="item",同樣的,也可以指定數組下標 wx:for-index="index"
我們對頁面樣式做簡單的優化,由于當頁面高度不夠時候,難以操作觸發 onReachBottom,故我們給當前的頁面外層標簽 page 加一個 150% 高度:
page{ height: 150%; } .item{ background-color:#f6f8f9; color:#9a9a9a; font-size:14px; padding: 10px 20px; margin-bottom:15px; }
同樣的,我們也給 list 頁面加一個 title,增加 list.json 文件:
{ "navigationBarTitleText": "展示數據" }
大功告成!!!預覽下小 demo 效果
如果之前有 appID,也可以在手機端預覽
小程序:審核發布流程官方文檔比較詳細了點擊查看
上一篇-iKcamp出品|微信小程序|工具安裝+目錄說明|基于最新版1.0開發者工具初中級教程分享
下期更新內容:小程序初級入門教程-第二章:小程序中級實戰教程:預備篇
iKcamp原創新書《移動Web前端高效開發實戰》已在亞馬遜、京東、當當開售。
iKcamp最新活動相關文章:
聽說 2017 你想寫前端?
前端開發者指南(2017)
翻譯連載 |《你不知道的JS》姊妹篇 | JavaScript 輕量級函數式編程
翻譯 | 關鍵CSS和Webpack: 減少阻塞渲染的CSS的自動化解決方案
報名地址:http://www.huodongxing.com/ev...
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/89120.html
摘要:官網訪問官網更快閱讀全部免費分享課程出品全網最新微信小程序基于最新版開發者工具之初中級培訓教程分享。 iKcamp官網:http://www.ikcamp.com 訪問官網更快閱讀全部免費分享課程:《iKcamp出品|全網最新|微信小程序|基于最新版1.0開發者工具之初中級培訓教程分享》。包含:文章、視頻、源代碼 showImg(https://segmentfault.com/i...
摘要:官網訪問官網更快閱讀全部免費分享課程出品全網最新微信小程序基于最新版開發者工具之初中級培訓教程分享。 iKcamp官網:http://www.ikcamp.com 訪問官網更快閱讀全部免費分享課程:《iKcamp出品|全網最新|微信小程序|基于最新版1.0開發者工具之初中級培訓教程分享》。包含:文章、視頻、源代碼 showImg(https://segmentfault.com/i...
摘要:微信小程序課程,面向所有具備前端基礎知識的同學官網訪問官網更快閱讀全部免費分享課程出品全網最新微信小程序基于最新版開發者工具之初中級培訓教程分享。 ?? 微信小程序課程,面向所有具備前端基礎知識的同學 ?? iKcamp官網:http://www.ikcamp.com 訪問官網更快閱讀全部免費分享課程:《iKcamp出品|全網最新|微信小程序|基于最新版1.0開發者工具之初中級培訓教...
摘要:微信小程序課程,面向所有具備前端基礎知識的同學官網訪問官網更快閱讀全部免費分享課程出品全網最新微信小程序基于最新版開發者工具之初中級培訓教程分享。 ?? 微信小程序課程,面向所有具備前端基礎知識的同學 ?? iKcamp官網:http://www.ikcamp.com 訪問官網更快閱讀全部免費分享課程:《iKcamp出品|全網最新|微信小程序|基于最新版1.0開發者工具之初中級培訓教...
摘要:微信小程序課程,面向所有具備前端基礎知識的同學官網訪問官網更快閱讀全部免費分享課程出品全網最新微信小程序基于最新版開發者工具之初中級培訓教程分享。 ?? 微信小程序課程,面向所有具備前端基礎知識的同學 ?? iKcamp官網:http://www.ikcamp.com 訪問官網更快閱讀全部免費分享課程:《iKcamp出品|全網最新|微信小程序|基于最新版1.0開發者工具之初中級培訓教...
閱讀 3705·2021-11-22 13:52
閱讀 3602·2019-12-27 12:20
閱讀 2385·2019-08-30 15:55
閱讀 2144·2019-08-30 15:44
閱讀 2262·2019-08-30 13:16
閱讀 574·2019-08-28 18:19
閱讀 1881·2019-08-26 11:58
閱讀 3436·2019-08-26 11:47