午夜视频在线网站,日韩视频精品在线,中文字幕精品一区二区三区在线,在线播放精品,1024你懂我懂的旧版人,欧美日韩一级黄色片,一区二区三区在线观看视频

分享

微信小程序開發(fā)入門教程

 了逹 2017-01-10

微信小程序開發(fā)入門教程

  做任何程序開發(fā)要首先找到其官方文檔,微信小程序目前還在邀請內(nèi)測階段,目前官方放出了部分開發(fā)文檔,經(jīng)過筆者一天的查看和嘗試,感覺文檔并不全面,但是通過這些文檔已經(jīng)能夠看出其大概面貌了。閑話不多說,我們先來看看其有哪些官方文檔。

微信公眾平臺開發(fā)者文檔統(tǒng)一入口為:https://mp.weixin.qq.com/wiki,這里面大部分內(nèi)容都是以前就有的,微信開發(fā)都是基于此份文檔。

        現(xiàn)在的變化是在這份文檔的頂部加了一個(gè)“微信公眾平臺.小程序”的入口,這個(gè)入口才就是專門針對微信小程序開發(fā)的文檔,如下圖:

點(diǎn)擊“微信公眾平臺. 小程序”,進(jìn)入詳細(xì)頁,如下圖:

這里就是目前發(fā)布的所有文檔啦。

知道了文檔的位置,下面我們來介紹下如何做一個(gè)微信小程序開發(fā):

 

第一步:下載微信小程序開發(fā)者工具并安裝,下載路徑:

 

https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/download.html

進(jìn)到下載界面后,根據(jù)自己的操作系統(tǒng)選擇相應(yīng)的鏈接進(jìn)行下載,下載完成后進(jìn)行安裝。

 

第二步:創(chuàng)建一個(gè)項(xiàng)目

 

開發(fā)者工具安裝完成后我們就可以將其打開,初次打開會彈出創(chuàng)建項(xiàng)目的窗口,如下圖:

為方便初學(xué)者了解微信小程序的基本代碼結(jié)構(gòu),在創(chuàng)建過程中,如果選擇的本地文件夾是個(gè)空文件夾,開發(fā)者工具會提示,是否需要?jiǎng)?chuàng)建一個(gè) quick start 項(xiàng)目。選擇“是”,開發(fā)者工具會幫助我們在開發(fā)目錄里生成一個(gè)簡單的 demo,為了方便后面的學(xué)習(xí),請務(wù)必選擇“是”。

 

第三步:項(xiàng)目代碼結(jié)構(gòu)解釋

 

 

點(diǎn)擊開發(fā)者工具左側(cè)導(dǎo)航的“編輯”,我們可以看到這個(gè)項(xiàng)目,已經(jīng)初始化并包含了一些簡單的代碼文件。最關(guān)鍵也是必不可少的,是 app.js、app.json、app.wxss 這三個(gè)。其中,.js后綴的是腳本文件,.json后綴的文件是配置文件,.wxss后綴的是樣式表文件。微信小程序會讀取這些文件,并生成小程序?qū)嵗?/p>

 /**

微信小程序視頻教程下載地址:http://pan.baidu.com/s/1gfhuh7H

**/

下面我們簡單了解這三個(gè)文件的功能,方便修改以及從頭開發(fā)自己的微信小程序。

1、app.js是小程序的腳本代碼。我們可以在這個(gè)文件中監(jiān)聽并處理小程序的生命周期函數(shù)、聲明全局變量。調(diào)用框架提供的豐富的 API,如本例的同步存儲及同步讀取本地?cái)?shù)據(jù)。

2、? app.json 是對整個(gè)小程序的全局配置。我們可以在這個(gè)文件中配置小程序是由哪些頁面組成,配置小程序的窗口背景色,配置導(dǎo)航條樣式,配置默認(rèn)標(biāo)題。注意該文件不可添加任何注釋。

3、app.wxss 是整個(gè)小程序的公共樣式表。我們可以在頁面組件的 class 屬性上直接使用 app.wxss 中聲明的樣式規(guī)則。

  我們注意到,在實(shí)例程序的代碼中還有2個(gè)文件夾,一個(gè)是pages,一個(gè)是utils,其中utils是放通用工具類方法的一個(gè)文件夾,pages是存放所有頁面的文件夾。我們著重講一下這個(gè)pages.

 

第四步:小程序頁面文件構(gòu)成

 

  在這個(gè)示例中,我們有兩個(gè)頁面,index 頁面和 logs 頁面,即歡迎頁和小程序啟動日志的展示頁,他們都在 pages 目錄下。微信小程序中的每一個(gè)頁面的【路徑+頁面名】都需要寫在 app.json 的 pages 中,且 pages 中的第一個(gè)頁面是小程序的首頁。

 每一個(gè)小程序頁面是由同路徑下同名的四個(gè)不同后綴文件的組成,如:index.js、index.wxml、index.wxss、index.json。.js后綴的文件是腳本文件,.json后綴的文件是配置文件,.wxss后綴的是樣式表文件,.wxml后綴的文件是頁面結(jié)構(gòu)文件。

index.wxml 是頁面的結(jié)構(gòu)文件:

復(fù)制代碼
<!--index.wxml-->
<view class="container">
  <view  bindtap="bindViewTap" class="userinfo">
    <image class="userinfo-avatar" src="{{userInfo.avatarUrl}}" background-size="cover"></image>
    <text class="userinfo-nickname">{{userInfo.nickName}}</text>
  </view>
  <view class="usermotto">
    <text class="user-motto">{{motto}}</text>
  </view>
</view>
復(fù)制代碼

 

本例中使用了<view/>、<image/>、<text/>來搭建頁面結(jié)構(gòu),綁定數(shù)據(jù)和交互處理函數(shù)。

index.js 是頁面的腳本文件,在這個(gè)文件中我們可以監(jiān)聽并處理頁面的生命周期函數(shù)、獲取小程序?qū)嵗?,聲明并處理?shù)據(jù),響應(yīng)頁面交互事件等。

復(fù)制代碼
//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
      })
    })
  }
})
復(fù)制代碼

 

index.wxss 是頁面的樣式表:

復(fù)制代碼
/**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;
}
復(fù)制代碼

 

頁面的樣式表是非必要的。當(dāng)有頁面樣式表時(shí),頁面的樣式表中的樣式規(guī)則會層疊覆蓋 app.wxss 中的樣式規(guī)則。如果不指定頁面的樣式表,也可以在頁面的結(jié)構(gòu)文件中直接使用 app.wxss 中指定的樣式規(guī)則。

index.json 是頁面的配置文件:

頁面的配置文件是非必要的。當(dāng)有頁面的配置文件時(shí),配置項(xiàng)在該頁面會覆蓋 app.json 的 window 中相同的配置項(xiàng)。如果沒有指定的頁面配置文件,則在該頁面直接使用 app.json 中的默認(rèn)配置。

logs 的頁面結(jié)構(gòu)

復(fù)制代碼
<!--logs.wxml-->
<view class="container log-list">
  <block wx:for-items="{{logs}}" wx:for-item="log">
    <text class="log-item">{{index + 1}}. {{log}}</text>
  </block>
</view>
復(fù)制代碼

 

logs 頁面使用 <block/> 控制標(biāo)簽來組織代碼,在 <block/> 上使用 wx:for-items 綁定 logs 數(shù)據(jù),并將 logs 數(shù)據(jù)循環(huán)展開節(jié)點(diǎn)

復(fù)制代碼
//logs.js
var util = require('../../utils/util.js')
Page({
  data: {
    logs: []
  },
  onLoad: function () {
    this.setData({
      logs: (wx.getStorageSync('logs') || []).map(function (log) {
        return util.formatTime(new Date(log))
      })
    })
  }
})
復(fù)制代碼

 

運(yùn)行結(jié)果如下:

 

 

第五步:手機(jī)預(yù)覽(只有獲得AppId的才有權(quán)限預(yù)覽)

開發(fā)者工具左側(cè)菜單欄選擇"項(xiàng)目",點(diǎn)擊"預(yù)覽",掃碼后即可在微信客戶端中體驗(yàn)。

 

 

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

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多