久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

「2.0」一個人開發(fā)一個App,,小程序從0到1,文件剖析

 怡紅公子0526 2021-12-31

不知你是不是見到“文件剖析”這4個大字,,才點進(jìn)來看一看的,?如果真是的話,那我可以坦誠,、真心,、負(fù)責(zé)任地告訴你:你上當(dāng)了,你上了賊船啦,,如果你現(xiàn)在想跳的話,,還來得及,反正茫茫大海中,,鯊魚正缺搞程序的人,。說你上當(dāng)了,是因為我根本就剖析不了,。我頂多只能做到分析,。

2.1 配置文件分析

趕快打開微信開發(fā)工具,快速進(jìn)到項目窗口中,。展開pages,,展開index,展開logs,,展開utils,,展開一切可以展開的。唯有如此,,方能見到整個項目的全貌,。

項目中,工程配置文件project.config.json,,可用來配置appid,、項目名稱、調(diào)試基礎(chǔ)庫,,還有云開發(fā)的文件夾路徑,,至于其他的,幾乎不會做任何改動,。

項目中,,頁面索引文件sitemap.json,可配置頁面是否可被索引(搜索), action為allow表示同意,,disallow表示不同意;page為*表示所有頁面,,pages/index

/index指定某個頁面,。

小程序項目中,除了配置文件外,,還有應(yīng)用文件和頁面文件,。

 

2.2 頁面文件分析

一個小程序應(yīng)用,由index,,logs等多個頁面組成,。一個頁面,由負(fù)責(zé)配置的json,,布局的wxml,,樣式的wxss和業(yè)務(wù)邏輯的js組成。

這是一個關(guān)于1+1+1+1=4的故事,,故事從配置文件json開始,。

2.2.1 json文件

json文件可配置窗口頂部導(dǎo)航欄的背景色、標(biāo)題,、標(biāo)題顏色和引入第3方組件,。第3方組件,唯有在json文件中引入,,方可在wxml文件中使用,。

{

"usingComponents": {

"mp-cells": "../../components/cells/cells",

"mp-cell": "../../components/cell/cell"

},

"navigationBarTitleText": "關(guān)于",

"navigationBarTextStyle": "black"

}

2.2.2 wxml文件

wxml文件,對手機(jī)界面進(jìn)行布局,。布局可從左到右,,上到下;可從右到左,,下到上,;可左青龍,右白虎,,上圖片,,下按鈕。

上圖片,,下按鈕是我要實現(xiàn)功能,,而左青龍,右白虎是留給你的作業(yè),,記得按時完成哦,。完成之后,仔細(xì)觀察一下代碼,,你就會發(fā)現(xiàn)有個莫名其妙的container,,莫名其妙地出現(xiàn)在那里,。不要急,存在即是合理,,只是還沒說到wxss文件而已,。

<view class="container">

<image src="../../images/long.png" style="width: 750rpx;height: 450rpx"></image>

<button>確定</button>

</view>

2.2.3 wxss文件

wxss文件,,是wxml的好基友,,一直站在wxml背后,承擔(dān)著化妝師(樣式)的工作,。這就是,,每個成功的wxml,背后都會有一個wxss的來由,。正是有了wxss的支持,,wxml才可以放心、大膽地布局,,大膽地布局天下,。

好看的皮囊千篇一律,有趣的靈魂萬里挑一,,光有布局,,光有一張靚麗的外表,不足以成就大業(yè),。若想成就大業(yè),,得靠js文件來實現(xiàn),實現(xiàn)業(yè)務(wù)邏輯,。

.container {

height: 100%;

display: flex;

flex-direction: column;

align-items: center;

}

2.2.4 js文件

js文件,,實現(xiàn)業(yè)務(wù)邏輯并把結(jié)果顯示在wxml中,昭告天下,。如果只是實現(xiàn)一個簡單任務(wù),,像計算1+1=2這種,那單個js應(yīng)該是沒問題的,,只是理想很豐滿,,現(xiàn)實很骨感,一個小程序應(yīng)用,,往往要實現(xiàn)的功能遠(yuǎn)遠(yuǎn)不止于如此,。

為了提高開發(fā)效率,可把一些通用的功能,,放在一個通用的js文件里,,并放置在utils下。等頁面中的js文件要使用時,,用require引入便可,。

既然有js可共用,,那是否有wxss可供共用?有的,,app.wxss文件便是,。

const util = require('../../utils/util.js')

Page({

/**

* 頁面的初始數(shù)據(jù)

*/

data: {

},

/**

* 生命周期函數(shù)--監(jiān)聽頁面加載

*/

onLoad: function (options) {

},

/**

* 生命周期函數(shù)--監(jiān)聽頁面初次渲染完成

*/

onReady: function () {

},

/**

* 生命周期函數(shù)--監(jiān)聽頁面顯示

*/

onShow: function () {

},

/**

* 生命周期函數(shù)--監(jiān)聽頁面隱藏

*/

onHide: function () {

},

/**

* 生命周期函數(shù)--監(jiān)聽頁面卸載

*/

onUnload: function () {

},

/**

* 頁面相關(guān)事件處理函數(shù)--監(jiān)聽用戶下拉動作

*/

onPullDownRefresh: function () {

},

/**

* 頁面上拉觸底事件的處理函數(shù)

*/

onReachBottom: function () { 

},

/**

* 用戶點擊右上角分享

*/

onShareAppMessage: function () {

}

})

2.3 app.wxss文件

app.wxss文件,為整個應(yīng)用的樣式配置文件,。在這里配置的樣式,,可供所有頁面共用,而且不用任何操作,。真好,,微信產(chǎn)品經(jīng)理,總算做了一件讓程序員省心的事了,。

一說到省心,,你就開心,一開心,,便忘乎所以,,忘記還有app.js和app.json未被提及。這兩個家伙,,可是很重要的角色,。

app.js,是一名有著一夫當(dāng)關(guān)萬夫莫開本事的土匪,。若要進(jìn)到頁面,,得先過app.js這一關(guān),此路是他開此樹是他栽,,要想從此過,,脫下褲子來。

就是說,,全局的內(nèi)容,,全局變量和全局的業(yè)務(wù)邏輯,在這里實現(xiàn),。至于全局的配置,,請移步到app.json文件中。

//app.js

App({

onLaunch: function () {

// 展示本地存儲能力

var logs = wx.getStorageSync('logs') || []

logs.unshift(Date.now())

wx.setStorageSync('logs', logs)

},

globalData: {

userInfo: null

}

})

2.4 app.json文件

app.json文件,,對整個應(yīng)用進(jìn)行配置的配置文件,。在這,可配置統(tǒng)一風(fēng)格的窗口(window)風(fēng)格,,包括頁面的標(biāo)題欄背景色,,標(biāo)題(這個不太可能),標(biāo)題顏色,;

可配置且必須配置的頁面路徑(pages),;可配置全局切換標(biāo)簽,,可配置定位等權(quán)限聲明和授權(quán)提示信息,可引入第3方插件,。

可,,可,可,,渴就喝水去,。

{

"pages": [

"pages/index/index",

"pages/logs/logs"

],

"window": {

"backgroundTextStyle": "light",

"navigationBarBackgroundColor": "#fff",

"navigationBarTitleText": "WeChat",

"navigationBarTextStyle": "black"

},

"permission": {

"scope.userLocation": {

"desc": "請授予位置服務(wù)權(quán)限,以便更好的吃飯"

}

},

"tabBar": {

"borderStyle": "black",

"backgroundColor": "#ffffff",

"color": "#1b1b1b",

"selectedColor": "#2b2b2b",

"list": [

{

"iconPath": "images/about.png",

"selectedIconPath": "images/about_p.png",

"pagePath": "pages/about/index",

"text": "關(guān)于"

},

{

"iconPath": "images/my.png",

"selectedIconPath": "images/my_p.png",

"pagePath": "pages/my/index",

"text": "我的"

}

]

},

"sitemapLocation": "sitemap.json"

}

等等,,聽我講了大半天,,是不是感覺少了點什么,,沒錯,,少了給我發(fā)紅包了。少了講開發(fā)工具生成的源代碼了,,少了懟微信產(chǎn)品經(jīng)理了,。

好吧,那我就再懟一句,,微信的小程序的產(chǎn)品經(jīng)理,,你們生成的代碼,我看不懂,,也不想看,,下一節(jié),我就統(tǒng)統(tǒng)把它們刪掉,。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多