微信小程序_01程序結構

22530D90-263A-438F-A908-5515F8277ADE.png

注意 AppID 目前個人無法申請,使用企業(yè)賬號可以申請,我們就選擇"無AppID"

3E07AFC1-E434-43C3-90F4-C96C3E2B23B5.png
  • 單擊添加項目即可完成工程的創(chuàng)建
AC69BE4C-C12D-48A4-B95F-0C248FEB015A.png

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>

寫法基本和web 頁面的寫法相同,稍微有一些區(qū)別
比如
1 .src="{{userInfo.avatarUrl}}" 要使用{{}} 把數據包起來 有人會問userInfo.avatarUrl 哪里來的? 他是定義在xx.js 文件中的數據
2 .bindtap="bindViewTap" 給視圖綁定一個單擊事件 "bindViewTap" 當用戶單機頁面時就會觸發(fā)這個函數,這個函數是寫在 xx.js 文件中的

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;
}

xx.js 文件 頁面數據存放和函數處理都在這個文件中

// 獲取全局app 實例
var app = getApp()
Page({
   // 定義界面上需要的數據
  data: {
    motto: 'Hello World',
    userInfo: {}
  },
  //視圖點擊事件處理函數
  bindViewTap: function() {
    wx.navigateTo({
      url: '../logs/logs'
    })
  },
  // 界面加載的時候觸發(fā)這個函數
  onLoad: function () {
    // js 日志輸出
    console.log('onLoad')
    // 引用當前頁面
    var that = this
    //調用應用實例的方法獲取全局數據
    app.getUserInfo(function(userInfo){
      //更新數據
      that.setData({
        userInfo:userInfo
      })
  })
  }
})

app.js文件的作用,相當于iOS開發(fā)appdelegate文件一樣

    App({
  onLaunch: function () {
    //調用API從本地緩存中獲取數據
    var logs = wx.getStorageSync('logs') || []
    logs.unshift(Date.now())
    wx.setStorageSync('logs', logs)
  },
 // 定義一個全局函數,在其他頁面的js文件中可以訪問的到
 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)
        }
      })
    }
  })
}
},
// 定義全局變量,在其他的頁面js文件中可以訪問的到
  globalData:{
    userInfo:null
  }
})

** app.json 配置全局屬性 **

  {
  // 把包含的頁面都放在這里,第一個是默認啟動后的頁面
  "pages":[
    "pages/index/index",
    "pages/logs/logs" 
  ],
  "window":{
    "backgroundTextStyle":"black",
    "navigationBarBackgroundColor": "#000",
    "navigationBarTitleText": "WeChat",
    "navigationBarTextStyle":"black"
  }
  }

app.wxss全局訪問的樣式

.container {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  padding: 200rpx 0;
  box-sizing: border-box;
} 
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容