微信小程序开发(一)
来源:互联网 发布:spss for mac 百度云 编辑:程序博客网 时间:2024/06/05 15:44
文件目录结构详情
后缀为wxss的为css样式表。后缀为wxml的为html文件,注意的是里面不是HTML标签了,手册里面提供了相应的标签,这些标签可以自动有一些效果。
- 最外面的app.js、app.json、app.wxss是全局脚本、全局样式或者全局配置项。
- pages是用于页面文件夹,里面的文件夹一个就是一个页面,不需要引入一个css样式表啊或者脚本等等。
- 在pages的页面中,logs是日志,能记入一些操作的信息
- 只要在全局的app.json中配置页面的话,编辑器自动在pages的目录下生成页面目录及文件。
- 写公共的样式中,可以写入全局的app.wxss内。
- 全局的app.js只要App({})方法才可以调用页面的方法和属性。在页面的脚本中,是使用Page({})方法来调用 7.
全局文件尝试
app.js
必须得使用APP({})方法来调用属性、方法和事件。只能写一个
// App({ // 代码块,注意能使用es6的就使用吧。 })
==根据上面onLaunch事件和onShow的接收参数,可以获取下面到东西==
onLaunch 初始化
当小程序初始化完成触发的事件, ==不要在 onLaunch 的时候调用 getCurrentPages(),此时 page 还没有生成。==
App({ onLaunch:function (e) { console.log(e,'我已经初始化了'); if(e.scene === 1011){ console.log('您是扫二维码进入的'); }else if (e.scene) { console.log('您是长按图片识别二维码'); }else if (e.scene === 1013) { console.log(手机相册选取二维码); }else if (e.scene === 1029){ console.log('卡券详情页'); } }});
onShow 小程序启动或进入前台
进入小程序触发一次,然后只要是如果是切换到手机的桌面的话,再次进入小程序触发一次。==一个变量不能触发从新赋值==
App({ onShow:function () { let i = 0; // 只要是在这里定义的变量都是无法重新赋值。 if (i == 0){ console.log(i+1); // 这里更够运算 i= 2+1; // 不能从新赋值 }else { console.log(i); // 完全就是不走。 } }});
let j = 0; // 在这里申明变量的话,下面不管任何方法都是可以重新赋值。App({ onShow:function () { j++; // 可以重新赋值 if (j == 1){ console.log(j,'第一次小程序运行'); // 第一次小程序运行。 }else { console.log(j,'你已经切换进入小程序了'); } }});
onHide 切换到手机桌面
App({ onHide:function () { console.log('切换到手机桌面了'); }});
onError 错误的脚本或者调用api(不支持)就会触发。
App({ onError:function () { console.log('程序出错'); }});
其他(自定义的一些属性方法)
全局app.json 配置
可以配选项卡、页面、设置入口页面、设置窗口的颜色、字、状态栏的颜色等等
{ "pages": [ "pages/index/index", // 创建index页面 "pages/logs/index" // 创建logs页面 ], "window": { "navigationBarTitleText": "Demo", // 设置导航栏上面的标题。 "navigationBarBackgroundColor": "#000", // 导航栏的颜色 "navigationBarTextStyle" : "#fff",//导航栏标题颜色。 "backgroundColor":"#ffffff",// 窗口的颜色(下面有图片,可以说明) "backgroundTextStyle":"light", // 下拉的图标及颜色,但是官方只提供两种,仅支持 dark/light "enablePullDownRefresh": "ture", // 开启下拉(必须得开启,才能在页面中使用onPullDownRefresh事件进行页面下拉刷新)。 "onReachBottomDistance":"60" // 设置下拉刷新的距离。 }, // 创建选项卡, "tabBar": { "color": "#", // (必填)设置选项卡的颜色(只支持16位颜色值)。 "selectedColor": "", // (必填)选项卡上的文字选中时的颜色(只支持16位颜色值) "backgroundColor": "", // (必填)选项卡的背景色(只支持16位颜色值) "position":"top", // 可选,两个值top和bottom。默认设置bottom在下面,如果设置为top,图标就会去掉。 "borderStyle":"white", //可选,只有两个值black/white。将选项卡中的边框颜色更改为,提供两个值。 "list": [{ // (必填)必须至少2个,最多5个,都不能超过。list数组内必须得有两个值。数组顺序排序。 "pagePath": "pages/index/index", // 引入的页面 "text": "首页", // 选项卡的名字 "iconPath": "", // 设置icon图标的路径(icon不能40kb,建议尺寸81pxX81px),经过测试,不能请求网络图片,只能是本地。 "selectedIconPath": "image/location_selected.png" // 选中当前的图标,经过测试,不能请求网络图片,只能是本地。 }, { "pagePath": "pages/logs/logs", // 引入的页面 "text": "日志" }] }, // 设置各种网络请求的超时时间,下面的都是默认为:60000,都是可选参数 "networkTimeout": { "request": 10000, // 设置wx.request请求的时间,单位毫秒。 "downloadFile": 10000, // 设置wx.downloadFile的超时时间,单位毫秒。 "connectSocket": 1000, // wx.connectSocket的超时时间,单位毫秒 "uploadFile": 6000// wx.uploadFile的超时时间,单位毫秒, }, "debug": true // 开启调试日志}
页面page.json配置
优先级,先找到页面的配置page.json,如果没有找到,然后在外面配置的app.json中。
==比如,在index页面中,必须得是index.json。下面的颜色值,不能写出#000,必须写全#000000==
{ "navigationBarBackgroundColor":"#26c398", // 当前导航栏背景颜色(必须得16进制的颜色值),----不能写出#000,必须写全--- "navigationBarTextStyle":"#ffffff", // 当前导航栏标题颜色,仅支持 black/white "navigationBarTitleText" : '我是当前页面的标题' , // 当前页面导航栏标题文字 "backgroundColor" : "#00ff00" , // 窗口的背景色 "backgroundTextStyle": "light", // 当前下拉背景字体、loading 图的样式,仅支持 dark/light "enablePullDownRefresh": true, // 当前页面下拉开启(如果在全局的app.json中设置了,就可以不用设置,如果)。 "disableScroll": false, // 默认false,如果是一个页面,不能让用户上下滚动,设置为 true 则页面整体不能上下滚动;只在 page.json 中有效,无法在 app.json 中设置该项 "onReachBottomDistance" : 120 // 当前页面上拉触底事件触发时距页面底部距离,单位为px}
阅读全文
0 0
- 微信小程序开发(一)
- 微信小程序开发(一)
- 微信小程序开发(一)
- 微信小程序开发-开发入门(一)
- 微信小程序开发<一>
- 微信小程序开发一
- 微信小程序开发一
- 微信小程序ecshop商城开发(一)
- 微信小程序开发(一)-简易教程
- 微信小程序开发(一)--数据存储
- 微信小程序开发(一)--数据存储
- 微信小程序 Jgank 开发(一)
- 微信小程序开发详解(一)---开发准备
- (一)微信小程序开发配置
- 微信小程序开发经验总结(一)
- 如何开发微信小程序(一)个人开发者该如何测试开发小程序
- 微信小程序开发系列(一) ——怎样开始进入小程序开发
- 微信小程序开发(一)之Hello World!
- 数据挖掘十大经典算法
- JAXB JavaBean与Xml之间转换
- java基础应用
- AWK 使用技巧
- (c++)数据结构与算法之树的应用:医院设施管理
- 微信小程序开发(一)
- 关于电脑QQ能上网,但是浏览器不能上网的问题的详细图文解决方法
- python slots初探
- java基础---Java中守护线程的总结
- C语言的格式控制符问题
- python面向对象(一)
- 2017年12月7日训练笔记
- 1、从传统的JDBC升级到Hibernate入门
- Git1.1