微信小程序开发:一篇文章掌握基础配置、基本语法和功能
框架主题文件
App.json : 小程序公共设置,小程序的全局配置文件
app.js: 小程序的逻辑文件,用于注册小程序全局实例,编译时会和其他页面逻辑文件打包成js文件
app.wxss:小程序公共样式,对全局页面有效
配置文件
{ //页面路径配置"page":["mypages/index/index",...],//默认窗口设置"window":{"navigationBarBackgroundColor": "#ffffff","navigationBarTextStyle": "black","navigationBarTitleText": "微信接口功能演示","backgroundColor": "#eeeeee","backgroundTextStyle": "light",//支持旋转屏幕"pageOrientation":"auto"},//底部tab设置"tabBar":{"color":"#000000","selectedColor":"#ff7f50","backgroundColor":"#ffffff","borderStyle":"black","position":"bottom","text":[{"iconPath":"images/home.png","selectedIconPath":"images/home-selected.png","text":"首页"},...]},//设置网络请求API的超时时间"networkTimeout":{},//是否开启debug模式"debug":false}
app.js
App({//小程序初始化完成时触发,全局只触发一次onLaunch (options) {// Do something initial when launch.},//小程序启动,或从后台进入前台显示时触发 。也可以使用wx.onAppShow绑定监听onShow (options) {// Do something when show.},//小程序从前台进入后台时触发,也可以使用wx.onAppHide绑定监听onHide () {// Do something when hide.},//小程序发生脚本错误或者API调用报错时触发 。也可以使用wx.onError绑定监听onError (msg) {console.log(msg)},//当页面不存在时触发onPageNotFound(Object.object){wx.redirectTo({url:'pages/...'})//如果是tabbar页面,请使用wx.switchTab},//全局数据globalData: 'I am global data'})
页面配置文件
此文件非必须文件,如果存在将覆盖app.json里的设置项
{"navigationBarBackgroundColor": "#ffffff","navigationBarTextStyle": "black","navigationBarTitleText": "微信接口功能演示","backgroundColor": "#eeeeee","backgroundTextStyle": "light"}
页面逻辑page.js如:index.js
//index.jsPage({//页面初始数据data: {text: "This is page data."},//监听页面加载onLoad: function(options) {// Do some initialize when page load.},//监听页面初次渲染完成onReady: function() {// Do something when page ready.},//监听页面显示onShow: function() {// Do something when page show.},//监听页面隐藏onHide: function() {// Do something when page hide.},//监听页面卸载onUnload: function() {// Do something when page close.},//监听用户下拉onPullDownRefresh: function() {// Do something when pull down.},//监听页面上拉触底onReachBottom: function() {// Do something when page reach bottom.},onShareAppMessage: function () {// return custom share data when user share.},//监听页面滚动onPageScroll: function() {// Do something when page scroll},//监听页面尺寸改变onResize: function() {// Do something when page resize},//监听点击tab时触发onTabItemTap(item) {console.log(item.index)console.log(item.pagePath)console.log(item.text)},// 用户自定义函数Event handler.viewTap: function() {this.setData({text: 'Set some data for updating view.'}, function() {// this is setData callback})},//用户自定义数据customData: {hi: 'MINA'}})
获取当前页面
//获取页面数组var pages = getCurrentPages();//获取当前页对象var currentPage = pages[pages.length-1]
事件处理
<view bindtap="myevent">点击执行逻辑层事件</view>Page{ myenvent:function(){console.log('点击了view');}}
界面结构文件数据绑定
<view>{{user.username}}</view>Page({data:{ user:{username:"jack",age:18},....}})//设置数据在方法中this.setData({ "user.username":'new name',....})
列表渲染
<view wx:for="{{array}}">{{index}}: {{item.message}}</view>Page({data: {array: [{message: 'foo',}, {message: 'bar'}]}})//02索引值<view wx:for="{{array}}" wx:for-index="idx" wx:for-item="itemName">{{idx}}: {{itemName.message}}</view>//03可嵌套<view wx:for="{{[1, 2, 3, 4, 5, 6, 7, 8, 9]}}" wx:for-item="i"><view wx:for="{{[1, 2, 3, 4, 5, 6, 7, 8, 9]}}" wx:for-item="j"><view wx:if="{{i <= j}}">{{i}} * {{j}} = {{i * j}}</view></view></view>//4多节点循环<block wx:for="{{[1, 2, 3]}}"><view> {{index}}: </view><view> {{item}} </view></block>//5 key<switch wx:for="{{objectArray}}" wx:key="unique" style="display: block;"> {{item.id}} </switch><button bindtap="switch"> Switch </button><button bindtap="addToFront"> Add to the front </button><switch wx:for="{{numberArray}}" wx:key="*this" style="display: block;"> {{item}} </switch><button bindtap="addNumberToFront"> Add to the front </button>
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 微信小程序开发教程:WeUI一个专为微信小程序设计的UI框架
- 辣煸四季豆的做法
- 欧阳修珍藏小龙团,2013年大益小龙柱开汤鉴赏
- 主角是叶婉兮萧裴琛的小说叫什么名字?
- 冬季女性小心“靴子病” 靴腰过紧会引起腱鞘炎
- 冬季天冷易感冒 这些预防小妙招怎能错过
- 女性朋友注意啦!冬季穿得少小心冻出病
- 冬季运动要谨慎 老年人要小心扭伤
- 三年级作文让我最感动的一件事?小学三年级作文一件令我感动的事
- 小猫下生多久才会喝奶 小猫出生几个小时内要喝上奶