亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

微信小程序 開發(fā)指南詳解

 更新時間:2016年09月27日 09:28:46   作者:zjhwqx  
這篇文章主要介紹了微信小程序 開發(fā)指南詳解的相關資料,需要的朋友可以參考下

編寫代碼

創(chuàng)建小程序實例

點擊開發(fā)者工具左側導航的“編輯”,我們可以看到這個項目,已經初始化并包含了一些簡單的代碼文件。最關鍵也是必不可少的,是 app.js、app.json、app.wxss 這三個。其中,.js后綴的是腳本文件,.json后綴的文件是配置文件,.wxss后綴的是樣式表文件。微信小程序會讀取這些文件,并生成小程序實例。 

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

​ app.js是小程序的腳本代碼。我們可以在這個文件中監(jiān)聽并處理小程序的生命周期函數、聲明全局變量。調用框架提供的豐富的 API,如本例的同步存儲及同步讀取本地數據。想了解更多可用 API,可參考 API 文檔

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

​ app.json 是對整個小程序的全局配置。我們可以在這個文件中配置小程序是由哪些頁面組成,配置小程序的窗口背景色,配置導航條樣式,配置默認標題。注意該文件不可添加任何注釋。更多可配置項可參考配置詳解

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

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

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

創(chuàng)建頁面

在這個教程里,我們有兩個頁面,index 頁面和 logs 頁面,即歡迎頁和小程序啟動日志的展示頁,他們都在 pages 目錄下。微信小程序中的每一個頁面的【路徑+頁面名】都需要寫在 app.json 的 pages 中,且 pages 中的第一個頁面是小程序的首頁。
​ 每一個小程序頁面是由同路徑下同名的四個不同后綴文件的組成,如:index.js、index.wxml、index.wxss、index.json。.js后綴的文件是腳本文件,.json后綴的文件是配置文件,.wxss后綴的是樣式表文件,.wxml后綴的文件是頁面結構文件。

index.wxml 是頁面的結構文件:

<!--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>

​ 本例中使用了<view/>、<image/>、<text/>來搭建頁面結構,綁定數據和交互處理函數。

index.js 是頁面的腳本文件,在這個文件中我們可以監(jiān)聽并處理頁面的生命周期函數、獲取小程序實例,聲明并處理數據,響應頁面交互事件等。

//index.js
//獲取應用實例
var app = getApp()
Page({
 data: {
 motto: 'Hello World',
 userInfo: {}
 },
 //事件處理函數
 bindViewTap: function() {
 wx.navigateTo({
  url: '../logs/logs'
 })
 },
 onLoad: function () {
 console.log('onLoad')
 var that = this
 //調用應用實例的方法獲取全局數據
 app.getUserInfo(function(userInfo){
  //更新數據
  that.setData({
  userInfo:userInfo
  })
 })
 }
})
​ index.wxss 是頁面的樣式表:
/**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;
}

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

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

​ 頁面的配置文件是非必要的。當有頁面的配置文件時,配置項在該頁面會覆蓋 app.json 的 window 中相同的配置項。如果沒有指定的頁面配置文件,則在該頁面直接使用 app.json 中的默認配置。

​ logs 的頁面結構

<!--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>

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

//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))
  })
 })
 }
})

運行結果如下:

4. 手機預

 開發(fā)者工具左側菜單欄選擇"項目",點擊"預覽",掃碼后即可在微信客戶端中體驗。

以上就是對微信小程序開發(fā)指南的資料整理,后續(xù)繼續(xù)補充相關資料,謝謝大家對本站的支持!

相關文章

  • 微信小程序與php 實現微信支付的簡單實例

    微信小程序與php 實現微信支付的簡單實例

    這篇文章主要介紹了微信小程序與php 實現微信支付的簡單實例的相關資料,需要的朋友可以參考下
    2017-06-06
  • Skypack布局前端基建實現過程詳解

    Skypack布局前端基建實現過程詳解

    這篇文章主要為大家介紹了Skypack布局前端基建過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07
  • 微信公眾號  提示:Unauthorized API function 問題解決方法

    微信公眾號 提示:Unauthorized API function 問題解決方法

    這篇文章主要介紹了微信公眾號 提示:Unauthorized API function 問題解決方法的相關資料,這里提供了出現提示的解決方法,需要的朋友可以參考下
    2016-12-12
  • 關于JavaScript防抖與節(jié)流的區(qū)別與實現

    關于JavaScript防抖與節(jié)流的區(qū)別與實現

    這篇文章主要介紹關于JavaScript防抖與節(jié)流的區(qū)別與實現,防抖就是用戶多次觸發(fā)事件,在用戶一直觸發(fā)事件中,事件不會執(zhí)行,只有在用戶停止觸發(fā)事件一段時間之后再執(zhí)行這個事件一次,二節(jié)流是用戶多次觸發(fā)事件,具體詳情一i起來學習下面文章內容吧
    2021-10-10
  • JS前端宏任務微任務及Event Loop使用詳解

    JS前端宏任務微任務及Event Loop使用詳解

    這篇文章主要為大家介紹了JS前端宏任務微任務及Event Loop使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07
  • 微信小程序 數組中的push與concat的區(qū)別

    微信小程序 數組中的push與concat的區(qū)別

    這篇文章主要介紹了微信小程序 數組中的push與concat的區(qū)別的相關資料,需要的朋友可以參考下
    2017-01-01
  • mitt tiny-emitter發(fā)布訂閱應用場景源碼解析

    mitt tiny-emitter發(fā)布訂閱應用場景源碼解析

    這篇文章主要為大家介紹了mitt tiny-emitter發(fā)布訂閱應用場景源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12
  • Immer 功能最佳實踐示例教程

    Immer 功能最佳實踐示例教程

    這篇文章主要為大家介紹了Immer功能最佳實踐示例教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-10-10
  • lodash內部方法getData和setData實例解析

    lodash內部方法getData和setData實例解析

    本篇章我們將了解lodash里內部關于Data的操作方法,重點關注getData、setData兩個內部方法,同時由實現上引申其他內部封裝的方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08
  • js c++ vue方法與數據交互通信示例

    js c++ vue方法與數據交互通信示例

    這篇文章主要為大家介紹了js c++ vue方法與數據交互通信示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08

最新評論