最近公司开始向小程序靠拢,作为零出发的人踩的坑真真的多,总结一下。
1. 选项卡切换页中内容没法实现不一样的高度
方法一:(新手不建议)
利用swiper标签实现
<view class='header'>
<view class='{{currentData == 0 ? "tabActive" : ""}}' data-current = "0" bindtap='checkCurrent'>1</view>
<view class='{{currentData == 1 ? "tabActive" : ""}}' data-current = "1" bindtap='checkCurrent'>2</view>
</view>
<swiper current="{{currentData}}" class='content' bindchange="bindchange">
<swiper-item>
<scroll-view scroll-y>
内容1...
</scroll-view>
</swiper-item>
<swiper-item>
<scroll-view scroll-y>
内容2...
</scroll-view>
</swiper-item>
</swiper>
//这样就会自适应高度
.content{
height: 94.6vh;
/* overflow: auto; */
position: relative;
top: 64rpx;
}
.content scroll-view{
height: 94.6vh;
}
data: {
currentData: 0,
},
bindchange: function (e) {
const that = this;
that.setData({ currentData: e.detail.current })
},
//点击切换,滑块index赋值
checkCurrent:function(e){
const that = this;
if (that.data.currentData === e.target.dataset.current){
return false;
}else{
that.setData({ currentData: e.target.dataset.current })
}
},
方法二:利用display:none来写
<view class='topHeader'>
<button bindtap="onChangeShowP" class="{{show?'buttonActive':''}}">1</button>
<button bindtap="onChangeShowC" class="{{!show?'buttonActive':''}}">2</button>
</view>
<view class="hide{{show?'show':''}}">内容1111</view>
<view class="hide{{!show?'show':''}}">内容2222</view>
data: {
show: true
},
onChangeShowP: function () {
var that = this;
that.setData({
show: true
})
},
onChangeShowC: function () {
var that = this;
that.setData({
show: false
})
},
2.图片预览在安卓上显示正常,苹果上不显示
所用路径中不能包含中文!!!
3.数据无法加载,打开调试之后数据显示
需要在微信公众平台中开发的服务器设置中加入自己的接口,注意必须是https开头,这是微信小程序的安全规范
4.在开发工具中无法加载数据
如果没有在服务器设置自己的接口,那么可以在开发工具中选择此项即可
5.小程序直接等于无法赋值
全局使用
that.setData({
show: true
})
本函数中使用直接等号就可以赋值
6.跳转h5页面
其实微信是不允许个人小程序跳转h5页面的(企业的可以),但是还是可以测试一下,用的是
<web-view src="{{address}}"></web-view>
新建一个页面写入以上代码,address写在onload函数中赋值跳转链接即可,注意只允许跳转https开头的链接
暂时发现这些,往后会持续更新…
注:记得用最新的开发工具,不然到上传的时候再更新会下载很慢!