一種新的應用形態web
特性json
開放的API小程序
開發環境跨域
小程序官網緩存
安裝微信官方微信web開發者工具
微信
App - app.js // 處理全局邏輯 - app.json // 公共配置 - app.wxss // 公共樣式表 pages // 頁面目錄 index - xxx.js // 頁面邏輯 - xxx.wxml // 頁面視圖 - xxx.wxss // 頁面樣式 - xxx.json // 配置文件 utils // 工具庫目錄
wxml - WXML -> WeiXin Markup Language wxss - WXSS -> Weixin Style Sheet
Page函數網絡
Page.setData
函數進行刷新界面數據this.data = {text: ''}
修改data中的所有數據app.json架構
pages // 設置頁面路徑,路由 window // 設置默認頁面的窗口 tabBar // 設置底部tab networkTimeout // 設置網絡超時時間 debug // 開啓debugger
事件app
// 點擊事件 <view bindtap="eventName"></view>
數據修改xss
this.setData({dataKey: newValue}) // 獲取 this.data.dataName
條件
wx:if
<view wx:if="data"></view> <view wx:else></view>
循環
wx:for
<view wx:for="{{arr}}" wx:key="index">{{item.name}}</view>
模板
template
模板不會在界面中顯示.
<!-- 定義 --> <template name="staffName"> <view>{{name}}</view> </template> <!-- 使用 --> <template is="staffName" data="{{...nameArr}}"></template>
wxml中的引用
<import src="item.wxml" /> <template is="item" data="...dataValue" />
Page({ /** * 頁面的初始數據 */ data: { }, /** * 生命週期函數--監聽頁面加載 */ onLoad: function (options) { }, /** * 生命週期函數--監聽頁面初次渲染完成 */ onReady: function () { }, /** * 生命週期函數--監聽頁面顯示 */ onShow: function () { }, /** * 生命週期函數--監聽頁面隱藏 */ onHide: function () { }, /** * 生命週期函數--監聽頁面卸載 */ onUnload: function () { }, /** * 頁面相關事件處理函數--監聽用戶下拉動做 */ onPullDownRefresh: function () { }, /** * 頁面上拉觸底事件的處理函數 */ onReachBottom: function () { }, /** * 用戶點擊右上角分享 */ onShareAppMessage: function () { } })
wx.request()
請求數據
wx.showLoading()
顯示loading
wx.showToast()
模態框
wx.showLoading({ title: '加載中' }) wx.request({ url: '', data: {}, success (res) { wx.hideLoading() }, error () { wx.hideLoading() wx.showToast({ title: '請求錯誤', duration: 2000 }) } })
數據緩存
wx.setStorage() // 設置緩存 wx.getStorage() // 獲取緩存
視圖
<view></view> // 視圖容器 <scroll-view></scroll-view> // 可滾動視圖區域 <swiper></swiper> // 滑塊視圖容器
文本,圖片,進度條,圖標
<text></text> <block> <icon></icon> </block> <progress></progress> <image></image>
導航
url須要相對路徑,不支持跳轉外鏈.
<navigator url="../../logs/logs"></navigator>
// 跳轉 wx.navigateTo() // 跳轉到指定路由 wx.navigateBack({delta: 2}) // 返回到指定路由/歷史記錄