最近寫小程序項目遇到一些問題,今天整理下這些問題的解決方法,希望對用戶有幫助。下面是登錄頁,點擊登錄時獲取input框中的值,
效果如下:
wxml布局如下: <view > <input type="text" placeholder-style="color:#fff;" bindinput="userNameInp" placeholder="請輸入賬號" /> </view> <view > <input password placeholder-style="color:#fff;" bindinput="usePasswordInp" placeholder="請輸入密碼"/> </view> <button class="loginBtn" bindtap='loginFn'>登錄</button> js代碼如下: const app = getApp(); Page({ /** * 頁面的初始數據 */ data: { userName: "", passWord: "", }, //監聽輸入的賬號 userNameInp: function (e) { this.data.userName = e.detail.value; }, //監聽輸入的密碼 usePasswordInp: function (e) { this.data.passWord = e.detail.value; }, //登錄 loginFn: function () { var that = this; if (that.data.userName.length == 0 || that.data.passWord.length == 0) { wx.showToast({ title: '賬號或密碼為空', icon: 'loading', duration: 2000 }) } else { wx.showLoading({ title: '登錄中...', }) wx.request({ url: 'https://localhost:8180/exam/login', data: { username: that.data.userName, password: that.data.passWord }, header: { 'content-type': 'application/x-www-form-urlencoded' // 默認值 }, method: 'post', success: function (res) { wx.hideLoading(); wx.removeStorageSync('sessionid'); // console.log('登錄成功', res.data.data); if (res.data.code == "0000") { wx.showToast({ title: '登錄成功', icon: 'success', duration: 1000 }) wx.setStorageSync('sessionid', res.header['Set-Cookie']); //保存Cookie到Storage wx.setStorage({ key: 'myData', data: res.data.data }) wx.redirectTo({ url: '/pages/index/index', }) } else { wx.showToast({ title: '登錄失敗', icon: 'none', duration: 2000 }) } }, fail: function (e) { wx.showToast({ title: '服務器出現錯誤', icon: 'none', duration: 2000 }) } }) } }, //跳轉到忘記密碼頁面 onTapDayWeather() { wx.navigateTo({ url: '/pages/updatepwd/updatepwd', }) }, /** * 生命周期函數--監聽頁面加載 */ onLoad: function (options) { }, })