解決方案:javascript
解決方案:html
capture-catch:touchmove="myCatchTouch"
myCatchTouch: function() {
console.log('stop user scroll it!');
return;
},
複製代碼
style={
position: fixed;
top: 0;
bottom: 0;
right: 0;
left: 0;
}
複製代碼
小程序文檔java
解決方案: 添加fixed屬性android
<textarea placeholder="備註留言"
maxlength='50'
fixed
name="textarea"
placeholder-style='font-size: 28rpx;color: #C7C7CD;text-align: justify;line-height: 42rpx;border-radius:10rpx !important'
bindinput='setRemark'
cursor-spacing='100'/>
複製代碼
Do not have hidden handler in current page: pages/huodongye/huodongye. Please make sure that hidden handler has been defined in pages/huodongye/huodongye, or pages/huodongye/huodongye has been added into app.json
強制border:none
無效 實現方案:ios
button::after {
border: none
}
複製代碼
在button 或者input框等可點擊的元素外面嵌套多層form以及button,屢次觸發submit
事件便可git
項目中須要根據返回的數字顯示漢字,須要在wxml中使用方法。web
官方解決方案:WXSajax
WXS(WeiXin Script)是小程序的一套腳本語言,結合 WXML,能夠構建出頁面的結構。json
注意axios
示例:
<!--wxml-->
<!-- 下面的 getMax 函數,接受一個數組,且返回數組中最大的元素的值 -->
<wxs module="m1">
var getMax = function(array) {
var max = undefined;
for (var i = 0; i <array.length; ++i) {
max = max === undefined ? array[i] : (max >= array[i] ?
max : array[i]);
}
return max;
}
module.exports.getMax = getMax;
</wxs>
<!-- 調用 wxs 裏面的 getMax 函數,參數爲 page.js 裏面的 array -->
<view>{{m1.getMax(array)}}</view>
複製代碼
復現: 登陸攔截失敗後應用的redirectTo
,用戶登錄成功後 應用navigateBack
沒有返回上一級;
解決方法: navigateBack
應該與navigateTo
配對使用; so, 把redirectTo
改成navigateTo
,再應用navigateBack({delta: 1})
就成功了。
教訓:老孃有史以來寫的最嚴重的線上bug.哎,測試時覺得是後端bug,測試方案沒覆蓋全。小程序接口使用前仍是得快速念一遍啊。
e.target
涉及事件委託。
問題描述:init函數須要app.js執行後的全局變量
onLoad: function () {
console.log('onLoad')
if (app.globalData.boliSid) {
if (!app.globalData.isBoundMobile) {
wx.redirectTo({
url: "/pages/binding/binding",
})
return false
}
this.setData({
isBinding: true
})
this.init()
} else {
app.getAuthKey().then(res => {
if (res.data.code == 200) {
app.globalData.boliSid = res.data.data.boli_sid
app.globalData.isBoundMobile = res.data.data.is_bound_mobile
}
if (!app.globalData.isBoundMobile) {
wx.redirectTo({
url: "/pages/binding/binding",
})
return false
}
this.setData({
isBinding: true
})
// 這裏是ajax請求啊
this.init()
})
}
console.log(app.globalData,'global')
}
複製代碼
init函數:
init: function(e) {
let that = this
console.log(e,'e')
console.log(app.globalData,'init global')
let configData = {
boli_sid: app.globalData.boliSid,
map_lat: app.globalData.latitude,
map_lng: app.globalData.longitude,
page: 1,
size: 10,
type: 0
}
console.log(configData,'configData')
let config = {
data: configData,
url: 'https://test.anjuy.cn/@wxapp/logistic/index',
isLoading: true
}
axios(config).then(res => {
// console.log(res.data,'data')
if (res.data.code == 200) {
that.setData({
initData: res.data.data
})
console.log( this.data.initData,'res')
wx.showToast({
title: '成功',
icon: 'success',
duration: 2000
})
}
}).catch(e => {
wx.showModal({
title: '提示',
content: '這是一個模態彈窗',
success(res) {
if (res.confirm) {
console.log('用戶點擊肯定')
} else if (res.cancel) {
console.log('用戶點擊取消')
}
}
})
})
},
複製代碼
正常執行; 必須確保app.js全局變量正常才能執行init() 注意同步異步事件
onPullDownRefresh觸發條件??
onPullDownRefresh: function () {
console.log(this.data.page,'page')
this.init()
},
onReachBottom: function () {
this.init()
},
複製代碼
解決方案: 須要json文件進行配置
{
"enablePullDownRefresh": true,
"onReachBottomDistance": 50,
}
複製代碼
問題描述:請求成功200後添加代碼,toast組件一直未執行
axios(config).then( res => {
if(+res.data.code == 200){
wx.showToast({
title: '取件成功',
icon: 'success',
duration: 1500
})
that.search = that.selectComponent('#mySearch');
that.search.delValue();
that.init()
}
}, e => {
console.log(e)
})
複製代碼
解決方案:
setTimeout(() => {
wx.showToast({
title: '取件成功',
icon: 'success',
duration: 1500
})
},300)
複製代碼
當設置的字體過大,如80rpx,輸入框會發生切割,文字展現不全; 重設input高度,覆蓋默認的height和min-height
input {
font-size: 80rpx;
line-height: 90rpx;
height: 90rpx;
min-height: 90rpx;
}
複製代碼
<scroll-view class="comments" scroll-x="true">
<view style="display:flex;align-items:top;">
<view class="item">1</view>
<view class="item">2</view>
<view class="item">3</view>
</view>
</scroll-view>
複製代碼
white-space: nowrap;
<view style="display:flex;align-items:top;">
爲了解決內部滾動元素底部對齊問題 3) 內部元素item
必須加上display: inline-block;
to be solved