微信小程序新手教程目錄結構和數據綁定
微信小程序新手教程目錄結構和數據綁定 ,本篇默認已經成功安裝微信小程序工具,來和小編一起看看吧
目錄結構
pages 所有頁面
app.js 全局js
app.json 注冊頁面,配置小程序
app.wxss 全局樣式文件
pages存放頁面文件
每個頁面一個文件夾,下面.wxml和.js文件是必需的。 .wxss和.josn文件不是必需的,如果沒有的話就用全局的app.wxss和app.json 如果有的話就覆蓋掉全局的用自己的
app.json頁面
{ //頁面注冊,無論有幾個頁面,所有都要在pages里面注冊 "pages":[ "pages/index/index", "pages/logs/logs", "pages/main/main", "pages/main1/main1", "pages/main2/main2", "pages/main3/main3", ],
//上導航配置及app背景顏色設置 "window":{ //是否開啟下拉刷新 "enablePullDownRefresh":true,
//窗口背景顏色,在上拉刷新,下拉刷新,navigate切換頁面時可以看見 "backgroundColor":"#eee",
//下拉背景字體、loading 圖的樣式,僅支持 dark/light,(string形式) "backgroundTextStyle":"light",
//上導航條背景顏色 "navigationBarBackgroundColor": "orange",
//上導航標題文字 "navigationBarTitleText": "上導航標題文字",
//上導航標題字體顏色,僅支持white和black "navigationBarTextStyle":"white" },
//底部導航配置 "tabBar": { "color": "#a9b7b7",//導航字體默認顏色
"selectedColor": "#eb4f38",//導航字體選中時顏色
"borderStyle": "black", //上border顏色,僅支持 black/white(string形式)
"backgroundColor": "rgba(0,0,0,0.4)",//底部導航背景色
"list": [ //導航列表2-5個 { "pagePath": "pages/index1/index1", //每個導航的網頁對應的路徑 "text": "首頁", //標題 "iconPath": "images/wechat.png", //默認小圖標路徑 "selectedIconPath": "images/wechatHL.png" //選中時的小圖標路徑 },
{ "pagePath": "pages/index2/index2", "text": "日記", "iconPath": "images/pause.png", "selectedIconPath": "images/play.png" },
{ "pagePath": "pages/index3/index3", "text": "指南", "iconPath": "images/pause.png", "selectedIconPath": "images/play.png" }, ] },
//網絡請求超時時間 "networkTimeout": { "request": 10000, "downloadFile": 9000, "uploadFile":8000, "connectSocket":7000 },
//是否開啟debug模式 "debug": true }
//說明:根據官方文檔,上述color和bg-color類型為HexColor即16進制類型,(指定僅支持 black/white,string形式的除外),但實測rbg,rgba和red這些類型目前也支持,但是建議大家還是按文檔要求來設置為16進制類型即: #ffffff 類型; // //使用時僅需將文件復制下來,根據需求改動即可; // //app.json為標準的json文件,所以不能存在有注釋,使用的時候需把注釋去掉;
app.js頁面
App({ //當小程序初始化完成時,會觸發 onLaunch(全局只觸發一次) onLaunch: function () {
//onLaunch時調用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) } }) } }) } }, //獲取后臺數據 onshow:function(){ wx.request({ url: 'test.php', data: { x: 'xxx', y: 'yyy' }, header: { 'Content-Type': 'application/json' }, success: function(res) { console.log(res.data) } })
},
//設置全局數據 //本頁面通過this.globalData即可取得數據 globalData:{ userInfo:null } //其他頁面可以通過getApp()獲取到小程序實例 //其他頁面可以通過getApp().globalData.xxx獲取到全局數據 })
app.wxss頁面
.common { height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: space-between; padding: 200rpx 0; box-sizing: border-box; }
//僅支持: 類:.common ID:#common 標簽:common 多個標簽:common1,common2 偽類::after 偽類::before //不支持層級,如.common > view 或者.common view
//引入新的單位rpx: rpx(responsive pixel): 可以根據屏幕寬度進行自適應。規定屏幕寬為750rpx。如在 iPhone6 上,屏幕寬度為375px,共有750個物理像素,則750rpx = 375px = 750物理像素,1rpx = 0.5px = 1物理像素。
及新的rem: rem(root em): 規定屏幕寬度為20rem;1rem = (750/20)rpx 。
//寫在app.wxss里面的樣式將被設置為公有的,對于其他頁面都是可用的
數據綁定添加事件
視圖層在標簽中添加 以bind或者catch開頭 bind是冒泡,catch阻止冒泡 示例:
bindtap="showName"> {{name}}
//js中事件函數"showName":function(){ //事件處理代碼 console.log("hello");}
事件類型
事件有:
touchstart
touchmove
touchend
touchcancel
tap點觸摸 相當于pc的click
longtap 觸摸后350ms再離開
事件對象
type 事件類型
timeStamp 事件戳
target 觸發事件的組件(DOM元素),也就是事件源
currentTarget 當前組件、
detail 事件相關的其他信息
目前微信小程序還沒有正式上線,在這里小編先為大家介紹一個即將在1月9號和微信小程序一起上線的小程序--嗨圖!大家可以直接在這個微信小程序上DIY自己的照片,先來看看具體嗨圖有些什么功能吧!
微信小程序嗨圖功能

1、專題——DIY圖片的模板,點擊可以生成使用,分享到朋友圈。
2、分享墻——用戶上傳的自己DIY作品。
3、立即制作——可以用自己的圖來DIY。
4、告訴我——告訴產品的改進,內容的增加。
想要體驗怎么制作屬于自己個性朋友圈照片的用戶,等1月9號微信小程序上線后,掃一掃下面的二維碼就可以啦!還等什么,趕緊掃碼體驗,開啟你的嗨圖之旅吧!

相關文章: