|
導讀微信小程序,簡稱小程序,英文名Mini Program,是一種不需要下載安裝即可使用的應用,它實現了應用“觸手可及”的夢想,用戶掃一掃或搜一下即可打開應用。小程序是一種不用下載就能使用的應用,也是一... 微信小程序,簡稱小程序,英文名Mini Program,是一種不需要下載安裝即可使用的應用,它實現了應用“觸手可及”的夢想,用戶掃一掃或搜一下即可打開應用。小程序是一種不用下載就能使用的應用,也是一項門檻非常高的創(chuàng)新,經過將近兩年的發(fā)展,已經構造了新的小程序開發(fā)環(huán)境和開發(fā)者生態(tài)。 IDE準備下載地址:mp.weixin.qq.com/debug/wxadoc/dev/devtools/download.html 知識準備 JavaScrip還是要看看的,推薦教程:JavaScript 初級教程 從零開始 微信小程序中就四種類型的文件 js ---------- JavaScrip文件 json -------- 項目配置文件,負責窗口顏色等等 wxml ------- 類似HTML文件 wxss ------- 類似CSS文件 在根目錄下用app來命名的這四中類型的文件,就是程序入口文件。 app.json 必須要有這個文件,如果沒有這個文件,IDE會報錯,因為微信框架把這個作為配置文件入口, 你只需創(chuàng)建這個文件,里面寫個大括號就行 以后我們會在這里對整個小程序的全局配置。記錄了頁面組成,配置小程序的窗口 背景色,配置導航條樣式,配置默認標題。 app.js 必須要有這個文件,沒有也是會報錯!但是這個文件創(chuàng)建一下就行 什么都不需要寫 以后我們可以在這個文件中監(jiān)聽并處理小程序的生命周期函數、聲明全局變量。 app.wxss 這個文件不是必須的。因為它只是個全局CSS樣式文件 app.wxml 這個也不是必須的,而且這個并不是指主界面哦~因為小程序的主頁面是靠在JSON文件中配置來決定的 有了這兩個文件你運行程序,IDE就不會報錯了,也意味著這是最簡單的微信小程序 創(chuàng)建程序實例Hello World app.js文件管理整個程序的生命周期,所以在里面添加如下代碼:(輸入App IDE會有提示) App({ onLaunch: function () { console.log('App Launch') }, onShow: function () { console.log('App Show') }, onHide: function () { console.log('App Hide') }}) 具體API解釋如下 美化ActionBar json文件負責配置ActionBar顏色,我們只需要在里面添加如下代碼即可,下圖有參數說明! Paste_Image.png Paste_Image.png { "window":{ "navigationBarBackgroundColor": "#BBDEF8", "navigationBarTitleText": "Demo", "navigationBarTextStyle":"white" }} Paste_Image.png 現在看ActionBar是不是像那么回事了!好接下來我們繼續(xù)寫我們第一個界面 美化頁面 美化頁面我們用到了 wxml 和 wxss文件 為了程序代碼結構簡潔 我們需要在跟目錄下創(chuàng)建一個新文件夾 名字隨意,我們這里叫pages 然后在pages文件夾里再創(chuàng)建新文件夾 名字隨意 這里我們叫 index 然后我們創(chuàng)建index.wxml文件然后在里面寫入以下代碼 Hellotext>view> 然后創(chuàng)建index.wxss文件然后在里面寫入以下代碼 .window{ color=#4995fa;} 然后我們創(chuàng)建 index.js文件 在文件中輸入如下代碼(輸入Page IDE會有提示) 函數解釋如下: Paste_Image.png 配置首頁 Json文件負責配置頁面路徑 所以我們在里面加入如下代碼 其中index的含義 其實就是指index.js文件 這里需要說明一點 pages 里面的路徑其實是指向js文件的 如果一個目錄下沒有該名稱的js文件是會報錯的! "pages":[ "pages/index/index"], 完成了!我們來運行程序! 超級Hello World 為了學習事件綁定,以及如何將數據在頁面上更新 我們來做個超級Hello World,就是我點擊文字,能讓 它變色! 綁定事件 我們打開index.wxml 將里面代碼改成這樣 Hellotext>view> 其實也就是加了catchtap="click" 這兩個屬性是什么意思呢 別著急 我會一一解釋 上圖展示了事件的一些的屬性名稱,這里需要注意紅框標注起來的內容,區(qū)分出冒泡事件和非冒泡事件,其實冒泡事件就是需要往上面一層容器傳遞這個事件。 看了這圖 我們再來看 catchtap="click" 的含義 catch 代表非冒泡事件 tap 代表點擊事件 所以連在一起就是非冒泡點擊事件 那后面那個click是啥 click 其實只是個變量名字 我們在index.js需要用這個名字綁定接收事件的函數 我們打開index.js 然后添加如下函數 click:function(){ console.log("點擊了文字"); }, 添加完后代碼長這樣 紅框中就是 添加的這個代碼 所以其實點擊事件的回調函數 就是 catchtap="click" 中的 click 后面加上 :function() 構成的 現在我們來運行程序試試 然后點擊文字 看是不是調用了 click:function 函數 并且打出了log 好接下來我們寫點擊一下變色的邏輯 那如何讓一個文字變色呢,當然是css 所以我們需要再index.wxss 中添加一個樣式 .window-red{ color:#D23933;} 然后我們進入index.js文件 你會發(fā)現代碼里面有個 data:{} 它不是page生命周期函數 其實他是個變量的數組,這個里面申請的變量都可以在 wxml中使用 我們在這里申請一個color color的值就是index.wxss中的樣式名稱 然后進入index.wxml中,將class中的值改成 {{color}} 其實意思就是 將js文件中變量 color的值在這里使用 也就是值等于 window 然后我們再回到index.js文件 在最上面申請一個變量控制點擊 然后在click:function() 函數中添加如下代碼 click:function(){ console.log("點擊了文字"); if(flag){ color = "window-red"; flag = false; }else{ color = "window"; flag = true; } this.setData({ color }); }, 修改完后的代碼如圖 其實就是在點擊是后 更換color變量的值 而更換的這個值其實就是樣式的名稱 更新界面數據 這里有個問題 我們更換完值 但是在wxml中不會立即生效 所以我們需要調用 this.setData()方法將值同步給wxml 讓它立即生效 好了我們運行程序 點擊Hello 看看是不是點一下 變一下顏色! 最后再補充一點 index目錄下也是可以配置 json文件的 也就是每個頁面都可以配置自己獨特的actionbar顏色等等 這里的配置會覆蓋 app.json文件的配置 源碼github 地址https://github.com/pwh0996/WXDemo.git 最后分享一波小程序源碼,488個小程序demo源碼下載專區(qū): p/36fc7213b5d0 有精力的朋友建議翻閱。 --- 我在知乎開了一個live,4月22日晚(周六)8點半我在知乎與大家見面:【0基礎周末學習小程序開發(fā)】(https://www.zhihu.com/lives/832919740296101888),歡迎捧場。 長按小程序碼,打開“修行公社”,即刻加入“微信小程序”米圈 本篇首發(fā)于我的個人微信公眾號哲學李論,主推藝術/技術相關內容,關注的都是朋友。 以上就是教你如何從零建造一個小程序項目的詳細內容,更多請關注php中文網其它相關文章! 小程序是一種不需要下載安裝即可使用的應用,它實現了應用“觸手可及”的夢想,用戶掃一掃或者搜一下即可打開應用。 |
溫馨提示:喜歡本站的話,請收藏一下本站!