app.js和app.json的了解
app.js是全局的js,在启动时,展示时,发生错误时等等,会被捕捉到,写法如下:
App({
onLaunch (options) {
// Do something initial when launch.
},
onShow (options) {
// Do something when show.
},
onHide () {
// Do something when hide.
},
onError (msg) {
console.log(msg)
},
globalData: 'I am global data'
})各函数的意义如下:
onLaunch(Object object)
小程序初始化完成时触发,全局只触发一次。参数也可以使用 wx.getLaunchOptionsSync 获取。
参数:与 wx.getLaunchOptionsSync 一致
onShow(Object object)
小程序启动,或从后台进入前台显示时触发。也可以使用 wx.onAppShow 绑定监听。
参数:与 wx.onAppShow 一致
onHide()
小程序从前台进入后台时触发。也可以使用 wx.onAppHide 绑定监听。
onError(String error)
小程序发生脚本错误或 API 调用报错时触发。也可以使用 wx.onError 绑定监听。
参数:与 wx.onError 一致
onPageNotFound(Object object)
基础库 1.9.90 开始支持,低版本需做兼容处理。
小程序要打开的页面不存在时触发。也可以使用 wx.onPageNotFound 绑定监听。注意事项请参考 wx.onPageNotFound。
参数:与 wx.onPageNotFound 一致
app.json是配置程序页面的,程序所有的页面将会配置在app.json里面,各参数解释如下:
{ //将所有页面写到pages里面 "pages": [ "pages/index/index", "pages/logs/logs", "pages/show/show" ], // window用来配置小程序窗口的样式和行为。 例如,“navigationBarTextStyle” 设置导航栏标题的 颜色为黑色,“navigationStyle” 设置导航的样式为自定义。 "window": { "navigationBarTextStyle": "black", "navigationStyle": "custom" }, // style用来指定小程序样式的版本。在这里,“v2” 表示使用小程序样式库的版本2。 "style": "v2", // rendererOptions用于配置渲染器的选项。在这个示例中,“skyline” 是渲染器的名称,部分配置包括 “defaultDisplayBlock” 表示是否默认显示块状元素,“disableABTest” 表示是否禁用A/B测试, A/B测试在小程序中通常用于评估不同版本页面或组件的效果,以确定哪个版本在用户体验、转化率等方面 表现更好。但这个示例中的渲染器选项设置为禁用A/B测试,可能是因为开发者希望统一展示默认版本,或 者不需要针对不同测试组进行版本的差异化展示。 “sdkVersionBegin” 和 “sdkVersionEnd” 表示渲染器支持的SDK版本范围。 "rendererOptions": { "skyline": { "defaultDisplayBlock": true, "disableABTest": true, "sdkVersionBegin": "3.0.0", "sdkVersionEnd": "15.255.255" } }, // componentFramework用于指定小程序使用的组件库。 在这个示例中,使用的是名为 “glass-easel” 的组件库。 "componentFramework": "glass-easel", // sitemapLocation用来指定小程序站点地图(sitemap)的位置,即一个 JSON 文件的路径。 "sitemapLocation": "sitemap.json", // lazyCodeLoading用于配置小程序代码的加载方式。 在这个示例中,使用的是 “requiredComponents”,表示会按需加载组件代码。 "lazyCodeLoading": "requiredComponents" }