微信小程序
app.js
设置全局的基础数据
通过 let app = getApp() 获取里面的数据
app.json
设置tab,注册页面的路由
app.wxss
公共的样式,引入iconfont
project.config.json
项目配置文件,用的最多就是配置是否开启https校验
pages
包含一个个具体的页面
pages里面的
index.json配置当前页面标题和引入的组件
index.wxml 页面结构
index.wxss页面样式
index.js页面的逻辑,请求和数据处理
小程序的传值
-
添加id
console.log(e.currentTarget.id)
-
获取全局getApp
-
在标签上data-*** -------通过e.currentTarget.dataset获取值
-
页面跳转传值
// 传递参数goLog() {wx.navigateTo({url: '/pages/logs/logs?id=123123&name=log',}) } // 收参数onLoad(options) {console.log('log',options);}
-
父组件向子组件传值
<w-child father='fuqin'/>// 子组件接收值Component({/*** 组件的属性列表*/properties: {father: {type: String}},/*** 组件的初始数据*/data: {msg: 'zujianmoren'},/*** 组件的方法列表*/methods: {getComVa() {this.setData({msg:'修改组件的默认值'})}} })
-
子组件传递给父组件 triggerEvent bind:changeNaviIndex val.detail
<button bind:tap="onChangeAnchor">子组件传值给父</button>onChangeAnchor() {this.triggerEvent('changeNaviIndex', '儿子的')}父接收<w-child father='fuqin' bind:changeNaviIndex="onGetIndex"/>onGetIndex(val) {console.log(111,val.detail);}
请谈谈小程序的生命周期函数
onLoad()页面加载时触发,只会调用一次,可获取当前页面路径中的参数
onShow()页面显示/切入前台时候触发,一般用来发送数据请求
onReady()页面初次渲染完成时触发,只会调用一次,代表页面已可和视图层进行交互
onHide()页面隐藏/切入后台时触发,如底部tab切换到其他页面或小程序切入后台等
onUnload()页面卸载时触发,如redirectTO或navigateBack到其他页面时
下拉刷新 “enablePullDownRefresh”: true
"window": {"navigationBarTextStyle": "white","navigationBarTitleText": "小程序","backgroundTextStyle": "dark","navigationBarBackgroundColor": "#888","enablePullDownRefresh": true},
包的的大小
- 主包大小限制:根据2023年1月之后更新的资料,微信小程序主包尺寸不包括插件时应小于1.5 M,但通常建议单个包大小限制为2M。
- 分包大小限制:截至2024年3月,整个小程序所有分包大小不超过20M,单个分包/主包大小不能超过2M。