1、 静态资源,比如图片、通用的wxss放在哪里?
可以新建一个文件夹,比如assets,里面放文件夹image、wxss,这部分跟咱们开发vue项目一样,
pages里就相当于vue的views文件夹页面,同理组件也可以新建一个components的文件夹,组件我在后面再说。
2、小程序的tabbar怎么写?
在app.json 里的配置
"tabBar": {
"color": "#333",
"selectedColor": "#3E86FE",
"borderStyle": "white", // 仅支持 black / white
"list": [{ // list的length最少是2 ,最多是5
"pagePath": "pages/home/home",
"text": "首页",
"iconPath": "assets/images/tabbar/home.png", // 推荐尺寸是40*40
"selectedIconPath": "assets/images/tabbar/home-active.png"
},
{
"pagePath": "pages/me/me",
"text": "个人中心",
"iconPath": "assets/images/tabbar/me.png",
"selectedIconPath": "assets/images/tabbar/me-active.png"
}
]
},
用vant的tabber也可以写这个tabber,但是我个人不太建议完全用vant的tabber替代小程序自带的tabber。
首先,我说的是不建议完全替代,意思是可以二者结合,做出一些更优化的体验(但其实我个人没有用这二者结合过,我只是看到过这样的文章,所以不细谈怎么二者结合做出更好的效果了),所以不是说vant的tabber完全不能用,只是最好不要只用vant的tabber。
为啥说不建议完全用vant的tabber写呢?咱们有这样一种情况,如果你从A页面跳转到某个tab,在这个tab页返回,是可以返回到A页面的,比如从登录页面跳进首页,苹果左滑,安卓也有手势返回,一些安卓机也有物理返回键,这些返回还能返回登录页,这肯定不是我们所期望的,
当然如果你了解redirectTo方法,你可能会说,那我可以用redirectTo方法跳进首页啊,我不用navigateTo,那登录页面就会关闭,返回的话就不会返回回去了啊。但是如果你嵌套很深的跳转,就不好再用redirectTo处理了。
redirectTo方法的含义是:关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面
3、app.json里pages可以怎么配置?
pages : 就是每个页面,比如登录页、首页、个人中心等等
"pages": [
"pages/index/index", // 启动页
"pages/home/home", // 首页 第一个home是文件夹名,第二个home是文件名,也可以写成pages/home/index
"pages/coach/coach", // 预约心理辅导
"pages/coach/date/date", // 选择预约日期
"pages/coach/time/time", // 选择预约时间
"pages/coach/success/success", // 预约成功
"pages/webview/webview" // 外链h5页面
],
小程序里,所有的json文件都不能有注释,会报错,也不能在json文件的最后一条写逗号 ,也会报错
4、怎么在小程序里自定义导航栏?
在对应的json文件里配置
"navigationStyle":"custom",
5、怎么在小程序里用H5页面?
用web-view组件
6、怎么使用component
注意:在组件 wxss 中不应使用 ID 选择器、属性选择器和标签名选择器。
一些需要注意的细节:
1、因为 WXML 节点标签名只能是小写字母、中划线和下划线的组合,所以自定义组件的标签名也只能包含这些字符。
2、自定义组件也是可以引用自定义组件的,引用方法类似于页面引用自定义组件的方式(使用 usingComponents 字段)。
3、自定义组件和页面所在项目根目录名不能以“wx-”为前缀,否则会报错。
7、怎么使用wx.request
先看链接,再看心理派小程序的代码
8、怎么使用wx.login
9、image
-
tip
:image组件默认宽度320px、高度240px -
tip
:image组件中二维码/小程序码图片不支持长按识别。仅在 wx.previewImage 中支持长按识别 -
tip
:image组件进行缩放时,计算出来的宽高可能带有小数,在不同 webview 内核下渲染可能会被抹去小数部分
10、ad
11、分包
11、van-button 里的bindtap和bind:click
场景:登录时,登录按钮在未输入账号密码时禁用,但是使用bindtap竟然还能登录。
Button 提供的是 click 事件而不是原生 tap 事件,按钮禁用时,click 事件不会触发,tap 事件依然会触发。
所以这种情况要用bind:click ,而不是bindtap