微信小程序?qū)崿F(xiàn)form表單本地儲(chǔ)存數(shù)據(jù)
本文實(shí)例為大家分享了微信小程序?qū)崿F(xiàn)form表單本地儲(chǔ)存數(shù)據(jù)的具體代碼,供大家參考,具體內(nèi)容如下
效果圖:
主要利用小程序的getStorage來(lái)實(shí)現(xiàn)異步本地儲(chǔ)存。
小程序目錄結(jié)構(gòu)如下:
新建項(xiàng)目前,為了簡(jiǎn)化操作可直接右鍵新建目錄,這樣建出來(lái)的文件會(huì)直接寫(xiě)在app.json中,無(wú)需手動(dòng)添加。
login.wxml代碼:
<!--pages/login/login.wxml--> <view class='container'> <form bindsubmit='submit'> <view class='row'> <text>姓名:</text> <input type='text' name='userName' placeholder='請(qǐng)輸入姓名' value='{{userName}}'/> </view> <view class='row'> <text>密碼:</text> <input type='password' name='passWord' placeholder='請(qǐng)輸入密碼' value='{{passWord}}'/> </view> <view> <button form-type='submit' type='primary'>登陸</button> </view> </form> </view>
login.wxss樣式:
/* pages/login/login.wxss */ .container{ padding: 1rem; font-size: 0.9rem; line-height: 1.5rem; border-shadow: 1px 1px #0099CC; } .row{ display: flex; align-items: center; margin-bottom: 0.8rem; } .row text{ flex-grow: 1; text-align: right; } .row input{ font-size: 0.7rem; color: #ccc; flex-grow: 3; border: 1px solid #0099CC; display: inline-block; border-radius: 0.3rem; box-shadow: 0 0 0.15rem #aaa; padding: 0.3rem; } .row button{ padding: 0 2rem; }
重點(diǎn)login.js來(lái)了:
// pages/login/login.js Page({ /** * 頁(yè)面的初始數(shù)據(jù) */ data: { userName:'', passWord:'' }, /** * 生命周期函數(shù)--監(jiān)聽(tīng)頁(yè)面加載 */ onLoad: function (options) { }, /** * 生命周期函數(shù)--監(jiān)聽(tīng)頁(yè)面初次渲染完成 */ onReady: function () { }, /** * 生命周期函數(shù)--監(jiān)聽(tīng)頁(yè)面顯示 */ onShow: function () { }, /** * 生命周期函數(shù)--監(jiān)聽(tīng)頁(yè)面隱藏 */ onHide: function () { }, /** * 生命周期函數(shù)--監(jiān)聽(tīng)頁(yè)面卸載 */ onUnload: function () { }, /** * 頁(yè)面相關(guān)事件處理函數(shù)--監(jiān)聽(tīng)用戶(hù)下拉動(dòng)作 */ onPullDownRefresh: function () { }, /** * 頁(yè)面上拉觸底事件的處理函數(shù) */ onReachBottom: function () { }, /** * 用戶(hù)點(diǎn)擊右上角分享 */ onShareAppMessage: function () { } })
點(diǎn)擊登陸時(shí),觸發(fā)submit函數(shù),如下:
submit:function(e){ console.log(e.detail.value); //表單數(shù)據(jù) var objData = e.detail.value; if (objData.userName && objData.passWord){ //異步方式儲(chǔ)存表單數(shù)據(jù) wx.setStorage({ key: 'userName', data: objData.userName, }) wx.setStorage({ key: 'passWord', data: objData.passWord, }) wx.navigateTo({ url: '../detail/detail', }) } },
儲(chǔ)存好數(shù)據(jù)后,下次再打開(kāi)該頁(yè)面,先判斷是否含有數(shù)據(jù),有就填充。
onLoad: function (options) { var that = this wx.getStorage({ key: 'userName', success: function(res) { that.setData({ userName: res.data }) }, }) wx.getStorage({ key: 'passWord', success: function (res) { console.log(res.data) that.setData({ passWord: res.data }) }, }) },
以上就是完整的表單登陸加儲(chǔ)存。
希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
js實(shí)現(xiàn)按鈕控制圖片360度翻轉(zhuǎn)特效的方法
這篇文章主要介紹了js實(shí)現(xiàn)按鈕控制圖片360度翻轉(zhuǎn)特效的方法,涉及HTML5中canvas方法的使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-02-02使用Nginx部署前端項(xiàng)目的詳細(xì)步驟記錄
在實(shí)際開(kāi)發(fā)中我們通常會(huì)使用Nginx來(lái)部署前端靜態(tài)頁(yè)面,以提供快速訪問(wèn)速度和良好的用戶(hù)體驗(yàn),這篇文章主要給大家介紹了關(guān)于使用Nginx部署前端項(xiàng)目的詳細(xì)步驟,需要的朋友可以參考下2024-08-08javaScript動(dòng)態(tài)添加Li元素的實(shí)例
下面小編就為大家分享一篇javaScript動(dòng)態(tài)添加Li元素的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-02-02js+html+css實(shí)現(xiàn)鼠標(biāo)移動(dòng)div實(shí)例
移動(dòng)div對(duì)于很多的網(wǎng)有們來(lái)說(shuō)是一件很熟悉的事了,本文老生長(zhǎng)談,用js實(shí)現(xiàn)鼠標(biāo)移動(dòng)div,希望大伙們可以舉一反三,感興趣的朋友可以參考下,或許本文對(duì)你有所幫助2013-01-01使用bootstraptable插件實(shí)現(xiàn)表格記錄的查詢(xún)、分頁(yè)、排序操作
這篇文章主要介紹了 使用bootstraptable插件實(shí)現(xiàn)表格記錄的查詢(xún)、分頁(yè)、排序操作,需要的朋友可以參考下2017-08-08微信小程序?qū)崿F(xiàn)頁(yè)面導(dǎo)航與傳參功能詳解
這篇文章主要為大家詳細(xì)介紹一下微信小程序?qū)崿F(xiàn)頁(yè)面導(dǎo)航的幾種方法以及幫助大家掌握微信小程序如何進(jìn)行傳遞參數(shù),感興趣的朋友可以了解一下2022-08-08微信小程序map組件結(jié)合高德地圖API實(shí)現(xiàn)wx.chooseLocation功能示例
這篇文章主要介紹了微信小程序map組件結(jié)合高德地圖API實(shí)現(xiàn)wx.chooseLocation功能,結(jié)合實(shí)例形式分析了map組件調(diào)用高德地圖API接口獲取地理位置提示列表并返回location相關(guān)操作技巧,需要的朋友可以參考下2019-01-01JS通過(guò)識(shí)別id、value值對(duì)checkbox設(shè)置選中狀態(tài)
最開(kāi)始需要獲取的是input value值設(shè)置checkbox選中狀態(tài),由于input value要使用計(jì)算業(yè)務(wù),后來(lái)改造為id,這里就為大家分享一下實(shí)現(xiàn)代碼,需要的朋友可以參考下2020-02-02