首頁  >  文章  >  微信小程式  >  教你如何從零建造一個小程式項目

教你如何從零建造一個小程式項目

Y2J
Y2J原創
2017-04-26 10:20:093122瀏覽

IDE準備

下載位址:mp.weixin.qq.com/debug/wxadoc/dev/devtools/download.html

知識準備

# JavaScrip還是要看的,推薦教學:JavaScript 初級教學

從零開始

微信小程式中就四種類型的檔案

js ----- ----- JavaScrip檔案

json -------- 專案設定文件,負責視窗顏色等等

wxml ------- 類似HTML檔案

wxss ------- 類似CSS文件

在根目錄下用app來命名的這四中類型的文件,就是程式入口文件。

app.json

必須要有這個文件,如果沒有這個文件,IDE會報錯,因為微信框架把這個作為配置文件入口,

你只需創建這個文件,裡面寫個大括號就行

以後我們會在這裡對整個小程式的全域配置。記錄了頁面組成,配置小程式的視窗 背景色,配置導覽條樣式,配置預設標題。

app.js

必須要有這個文件,沒有也是會報錯!但是這個檔案建立一下就行 什麼都不需要寫

以後我們可以在這個檔案中監聽並處理小程式的生命週期函數、宣告全域變數。

app.wxss

這個檔案不是必須的。因為它只是個全域CSS樣式檔

app.wxml

這個也不是必須的,而且這個並不是指主介面哦~因為小程式的主頁是靠在JSON檔中配置來決定的

有了這兩個文件你運行程序,IDE就不會報錯了,也意味著這是最簡單的微信小程序

創建程序實例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": "#igBD8", tyle" :"white"    }}

Paste_Image.png

現在看ActionBar是不是像那麼回事了!好接下來我們繼續寫我們第一個介面

美化頁面

美化頁面我們用到了wxml 和wxss檔

為了程式碼結構簡潔

我們需要在跟目錄下創建一個新資料夾名字隨意,我們這裡叫pages

然後在pages資料夾裡再創建新資料夾名字隨意這裡我們叫index

然後我們建立index.wxml檔案然後在裡面寫入以下程式碼

Hellotext>view>

然後建立index.wxss檔案然後在裡面寫入以下程式碼

#.window{ color=#4995fa;}

然後我們建立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"

這兩個屬性是什麼意思呢別著急我會一一解釋

上圖展示了事件的一些的屬性名稱,這裡需要注意紅框標註起來的內容,要區分出冒泡事件和非冒泡事件,其實冒泡事件就是需要往上面一層容器傳遞這個事件。

看了這張圖我們再來看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檔

你會發現程式碼裡面有個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         }      this.setData({ color      });  },

修改完後的程式碼如圖

其實就是點選是後更換color變數的值而更換的這個值其實就是樣式的名稱

更新介面資料

這裡有個問題我們更換完值但是在wxml中不會立即生效

所以我們需要呼叫

this.setData()方法將值同步給wxml 讓它立即生效

#好了我們運行程式點擊Hello 看看是不是點一下變一下顏色!

最後再補充一點index目錄下也是可以設定json檔案的

也就是每個頁面都可以配置自己獨特的actionbar顏色等等

這裡的設定會覆蓋app.json檔案的設定

原始碼github 位址https://github.com/pwh0996/WXDemo.git

最後分享一波小程式原始碼,488個小程式demo原始碼下載專區:

p/36fc7213b5d0

有精力的朋友建議翻閱。

---

我在知乎開了一個live,4月22日晚(週六)8點半我在知乎與大家見面:【0基礎週末學習小程序開發】(https://www.zhihu.com/lives/832919740296101888),歡迎捧場。

長按小程式碼,打開“修行公社”,即刻加入“微信小程式”米圈

本篇首發於我的個人微信公眾號哲學李論,主推藝術/技術相關內容,關注的都是朋友。

以上是教你如何從零建造一個小程式項目的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn