微信小程序開(kāi)發(fā)(三)項(xiàng)目目錄及文件結(jié)構(gòu)

    第二章我們已經(jīng)創(chuàng)建了一個(gè)Hello WXapplet示例小程序。愛(ài)掏網(wǎng) - it200.com我們從文件目錄結(jié)構(gòu)來(lái)了解Hello WXapplet項(xiàng)目的構(gòu)成。愛(ài)掏網(wǎng) - it200.com

      目錄結(jié)構(gòu)顯示,在小程序項(xiàng)目的根目錄下面包含3個(gè)app開(kāi)頭的文件(app.js、app.json、app.wxss)以及pages目錄與utils目錄。愛(ài)掏網(wǎng) - it200.com其中pages目錄存放了2個(gè)頁(yè)面(index和log)的構(gòu)成文件。愛(ài)掏網(wǎng) - it200.com每個(gè)頁(yè)面都是一個(gè)目錄,目錄名就是唯一的頁(yè)面名,其下由以頁(yè)面名為前綴的2~4個(gè)文件組成。愛(ài)掏網(wǎng) - it200.com

    ?  小程序的目錄文件結(jié)構(gòu)如上,左側(cè)的3個(gè)app文件必須放在小程序根目錄下面,其他文件由開(kāi)發(fā)者自由控制。愛(ài)掏網(wǎng) - it200.com

      app.js是小程序的腳本代碼,用來(lái)監(jiān)聽(tīng)并處理小程序的生命周期、聲明全局變量、調(diào)用框架提供的豐富API等。愛(ài)掏網(wǎng) - it200.com 

    //app.js
    App({onLaunch: function () {//調(diào)用API從本地緩存中獲取數(shù)據(jù)var logs = wx.getStorageSync('logs') || []logs.unshift(Date.now())wx.setStorageSync('logs', logs)},getUserInfo:function(cb){var that = thisif(this.globalData.userInfo){typeof cb == "function" && cb(this.globalData.userInfo)}else{//調(diào)用登錄接口wx.login({success: function () {wx.getUserInfo({success: function (res) {that.globalData.userInfo = res.userInfotypeof cb == "function" && cb(that.globalData.userInfo)}})}})}},globalData:{userInfo:null}
    })

      app.json是對(duì)整個(gè)小程序的全局配置,配置小程序是由哪些頁(yè)面組成,配置小程序的窗口背景顏色、配置導(dǎo)航條樣式、配置默認(rèn)標(biāo)題等。愛(ài)掏網(wǎng) - it200.com(json文件中不可以加注釋)

    {"pages":["pages/index/index","pages/logs/logs"],"window":{"backgroundTextStyle":"light","navigationBarBackgroundColor": "#fff","navigationBarTitleText": "WeChat","navigationBarTextStyle":"black"}
    }

      app.wxss是整個(gè)小程序的公共樣式表。愛(ài)掏網(wǎng) - it200.com

    /**app.wxss**/
    .container {height: 100%;display: flex;flex-direction: column;align-items: center;justify-content: space-between;padding: 200rpx 0;box-sizing: border-box;
    }

      其中app.js和app.json是必需的。愛(ài)掏網(wǎng) - it200.com

      小程序頁(yè)面是由同路徑下同名不同后綴的2~4個(gè)文件組成:

      .js后綴的文件是腳本文件。愛(ài)掏網(wǎng) - it200.com

    //index.js
    //獲取應(yīng)用實(shí)例
    var app = getApp()
    Page({data: {motto: 'Hello World',userInfo: {}},//事件處理函數(shù)bindViewTap: function() {wx.navigateTo({url: '../logs/logs'})},onLoad: function () {console.log('onLoad')var that = this//調(diào)用應(yīng)用實(shí)例的方法獲取全局?jǐn)?shù)據(jù)app.getUserInfo(function(userInfo){//更新數(shù)據(jù)that.setData({userInfo:userInfo})})}
    })

      .json后綴的文件是配置文件。愛(ài)掏網(wǎng) - it200.com(如存在,會(huì)層疊覆蓋app.json的window中相同的配置項(xiàng),json文件中不可以加注釋)

      .wxss后綴的樣式表文件。愛(ài)掏網(wǎng) - it200.com(如存在,會(huì)層疊覆蓋app.wxss中的樣式規(guī)則)

    /**index.wxss**/
    .userinfo {display: flex;flex-direction: column;align-items: center;
    }.userinfo-avatar {width: 128rpx;height: 128rpx;margin: 20rpx;border-radius: 50%;
    }.userinfo-nickname {color: #aaa;
    }.usermotto {margin-top: 200px;
    }

      .wxml后綴的文件是頁(yè)面結(jié)構(gòu)文件。愛(ài)掏網(wǎng) - it200.com


    {{userInfo.nickName}}{{motto}}

      其中.js文件和.wxml文件時(shí)必需的。愛(ài)掏網(wǎng) - it200.com

      微信小程序中的每一個(gè)頁(yè)面的“路徑+頁(yè)面名”都需要寫(xiě)在app.json的pages中,且pages中的第一個(gè)頁(yè)面是小程序的首頁(yè)。愛(ài)掏網(wǎng) - it200.com

    轉(zhuǎn):https://www.cnblogs.com/Strive-count/p/8983727.html



    聲明:所有內(nèi)容來(lái)自互聯(lián)網(wǎng)搜索結(jié)果,不保證100%準(zhǔn)確性,僅供參考。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。
    發(fā)表評(píng)論
    更多 網(wǎng)友評(píng)論0 條評(píng)論)
    暫無(wú)評(píng)論

    返回頂部

    主站蜘蛛池模板: 国产精品亚洲一区二区三区| 国产精品制服丝袜一区| 天堂一区人妻无码| 中文字幕一区日韩在线视频| 无码人妻精品一区二区三区蜜桃| 美女福利视频一区二区| 丰满爆乳无码一区二区三区| 精品三级AV无码一区| 国产一区二区免费视频| 精品一区二区无码AV| 无码一区二区三区亚洲人妻| 中文字幕乱码人妻一区二区三区| 国产成人无码一区二区三区| 中文字幕一区二区人妻| 精品国产香蕉伊思人在线在线亚洲一区二区 | 老湿机一区午夜精品免费福利| 2021国产精品一区二区在线| 高清一区二区三区免费视频| 久久久无码精品国产一区| 亚洲色婷婷一区二区三区| 精品视频一区二区三区| 成人国内精品久久久久一区| 好爽毛片一区二区三区四| 久久精品国产一区二区三区不卡| 亚洲日本一区二区三区在线不卡 | 三上悠亚亚洲一区高清| 国产精品女同一区二区久久| 久久亚洲色一区二区三区| 久久精品人妻一区二区三区| 久久国产香蕉一区精品| 红桃AV一区二区三区在线无码AV| 岛国无码av不卡一区二区| 国产在线精品一区二区不卡| 无码国产精品一区二区免费vr| 久久4k岛国高清一区二区| 人妻AV一区二区三区精品| 亚洲无码一区二区三区| 国产成人一区二区三区精品久久| 精品一区二区高清在线观看| 国产综合无码一区二区三区| 无码国产精品一区二区免费3p|