# 微信开发
记录微信开发中的问题和技巧
# 小程序开发
技巧和问题
# 问题
- 设置了
tabBar.list
页面未展示?
这个问题属实有点坑~~
我的默认首页是 pages/index/index
, 我设置的 tabBar.list
如下:
{
...
"tabBar": {
"list": [
{
"text": "xxx",
"pagePath": "pages/main/main",
"iconPath": "images/xxx.png",
"selectedIconPath": "images/xxx.png"
},
...
]
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
其实这个问题就在于, list和当前的路由不匹配
- 当前路由:
/pages/index/index
tabBar.list
中不包含这个当前路由
- 图片路径拼接变量
wxml 貌似不支持字符串模板的方式. 只能采用原始的字符串拼接方式
<view>
<image class="box-img" src="{{'../../images/' + foo + '.png'}}" />
</view>
1
2
3
2
3
bindtap
事件绑定回调参数只有event
, 不能额外进行传参
想要传自定义参就在element上给个自定义属性
<view
class="box"
wx:for="{{list}}"
wx:key="index"
data-index="{{index}}"
bindtap="onClick"
>{{item.txt}}</view>
1
2
3
4
5
6
7
2
3
4
5
6
7
逻辑层调用:
Page({
onClick(e: BaseEvent) {
const index = e.target.dataset.index
console.log(index)
// do something...
}
})
1
2
3
4
5
6
7
2
3
4
5
6
7
- TypeScript 事件 event 声明类型
有时候搞不清小程序中的 event 如何去声明类型. 请前往 项目根目录/typings/types/wx/lib.wx.event.d.ts
文件下进行查找. 或者也可在线上进行查询: wechat-miniprogram/api-typings
(opens new window)
To Be Continued...