天天看點

微信小程式 全局變量異步函數_微信小程式目錄結構介紹

一:簡介

.json為配置檔案

.wxml 為模闆檔案,相當于HTML模闆

.wxss 為樣式檔案,相當于HTML的CSS樣式表

.js 為JS 腳本邏輯檔案,相當于HTML的js腳本

二:總結構

一個描述整體程式的 app

多個描述各自頁面的 page

一個項目IDE配置檔案project.config.json

一個共用程式邏輯庫

1.一個小程式主體部分(名稱為app)由三個檔案組成,必須放在項目的根目錄

檔案 必填 作用

app.js 是 小程式邏輯

app.json 是 小程式公共配置

app.wxss 否 小程式公共樣式表

2.多個描述各自頁面的 pages(pages目錄存儲小程式的每個頁面)

檔案 必填 作用

頁面名稱.js 是 本頁面邏輯

頁面名稱.wxml 是 頁面結構

頁面名稱.wxss 否 頁面樣式表

頁面名稱.json 否 頁面配置

注意:

1)為了友善開發者減少配置項,描述頁面的四個檔案必須具有相同的路徑與檔案名。

2)從上可看出可包含.json、.wxml、.wxss、.js4個類型的檔案

.json配置檔案,即是目前這個頁面的配置檔案,

預設建立項目時,每個頁面底下沒有.json配置檔案,因為它不是必填必須有的檔案

微信小程式 全局變量異步函數_微信小程式目錄結構介紹

index和logs兩個頁面

3.根目錄下的project.config.json

1).項目配置檔案或稱為項目IDE配置檔案

在“微信開發者工具”上做的任何配置都會寫入到這個檔案。

2).應用場景:

通常在使用一個開發IDE工具的時候,都會針對各自喜好做一些個性化配置,

例如界面顔色、編譯配置等等,當你換了另外一台電腦重新安裝工具的時候,

你還要重新配置。

3).解決辦法:就是這個project.config.json項目IDE配置檔案

當你重新安裝工具或者換電腦工作時,你隻要載入同一個項目的代碼包,

開發者工具就自動會幫你恢複到當時你開發項目時的個性化配置,

其中會包括編輯器的顔色、代碼上傳時自動壓縮等等一系列選項

4).引申

這麼說,每個項目都可以定制了一套自己喜歡的IDE配置

微信小程式 全局變量異步函數_微信小程式目錄結構介紹

項目根目錄下

4.一個共用程式邏輯庫(util目錄)

這個目錄可以自定義名稱

公共的js函數檔案,通過module.exports的方式暴露pages下的每個頁面使用

不需要每個頁面編寫重複的Js代碼。

微信小程式 全局變量異步函數_微信小程式目錄結構介紹

module.exports暴露給頁面使用

5.總結構圖

微信小程式 全局變量異步函數_微信小程式目錄結構介紹

總結構圖

三:一個描述整體程式的 app 之app.js檔案(注冊小程式項目)

作用:調用了App()函數注冊一個小程式,參數為一個{}對象

App()函數用來注冊一個小程式。接受一個 object 參數,其指定小程式的生命周期函數等

微信小程式 全局變量異步函數_微信小程式目錄結構介紹

調用App(obj)函數

詳情參考API文檔"邏輯層/程式注冊"

但要注意:

1.App() 必須在 app.js 中注冊,且不能注冊多個。

2.不要在定義于 App() 内的函數中調用 getApp() ,使用 this 就可以拿到 app 執行個體。

3.不要在 onLaunch 的時候調用 getCurrentPages(),此時 page 還沒有生成。

4.通過 getApp() 擷取執行個體之後,不要私自調用生命周期函數。

例子:

API文檔中Object對象有一個參數:

其他 Any 開發者可以添加任意的函數或資料到 Object 參數中,用 this 可以通路

相當于ApplicationContext,在整個小程式上下文中都以使用,即服務整個小程式scope。

app.js程式主體邏輯層使用this通路,在頁面.js邏輯層使用getApp().屬性名稱可以通路。

微信小程式 全局變量異步函數_微信小程式目錄結構介紹

app.js的App({自定義Any屬性})

頁面.js邏輯層通路

//index.js

//擷取應用執行個體

const app = getApp()

微信小程式 全局變量異步函數_微信小程式目錄結構介紹

頁面.js邏輯層通路

又例:

微信小程式 全局變量異步函數_微信小程式目錄結構介紹

app.js的App({自定義Any屬性})

微信小程式 全局變量異步函數_微信小程式目錄結構介紹

頁面.js邏輯層通路

微信小程式 全局變量異步函數_微信小程式目錄結構介紹

視圖使用

四:一個描述整體程式的 app 之app.json檔案(配置小程式項目)

作用:對微信小程式進行全局配置,決定頁面檔案的路徑、視窗表現、設定網絡逾時時間、設定多 tab 等。

所有的選項配置pages、window、tabBar、networkTimeout、debug

app.json 配置項清單:

屬性 類型 必填 描述

pages String Array 是 設定頁面路徑

window Object 否 設定預設頁面的視窗表現

tabBar Object 否 設定底部 tab 的表現

networkTimeout Object 否 設定網絡逾時時間

debug Boolean 否 設定是否開啟 debug 模式

pages屬性說明:

類型是String Array(字元串數組), 每一項都是字元串,來指定小程式由哪些頁面組成。

每一項代表對應頁面的【路徑+檔案名】資訊,數組的第一項代表小程式的初始頁面。

小程式中新增/減少頁面,都需要對 pages 數組進行修改。

檔案名不需要字尾,架構自動比對pages 數組路徑下 .json, .js, .wxml, .wxss 4檔案進行整合。

pages字元串數組的第一個字元串頁面路徑【路徑+檔案名】為小程式顯示的首頁。

如開發目錄為:

pages/

pages/index/index.wxml

pages/index/index.js

pages/index/index.wxss

pages/logs/logs.wxml

pages/logs/logs.js

則配如下(小程式中新增/減少頁面,都需要對 pages 數組進行修改)

{

"pages": [

//這裡的的第一個頁面作為首頁顯示

"pages/index/index

繼續閱讀