Home > Article > WeChat Applet > WeChat applet: simple form, local storage
Example content
Login interface
Processing login form data
Processing login form data (asynchronous)
Clear local data
Example 1: Login interface
Add the login page pages/login/login to app.json and set it as the entrance.
After saving, the relevant files will be automatically generated (very convenient).
Modify the view file login.wxml
Form related attributes:
Attribute name type description report-submit Boolean Whether to return formId for sending template messages bindsubmit EventHandle carries the data in the form to trigger the submit event, event.detail = { value : {"name ":"value"} , formId:"" } bindreset EventHandle The reset event will be triggered when the form is reset. Bindsubmit is used here to process the submitted form data.
input related attributes
Attribute name type default value description value String The content of the input box type String text input type, valid values: text, number, idcard, digit, time, date password Boolean false Whether it is Password type placeholder String Placeholder when the input box is empty placeholder-style String Specify the style of placeholder placeholder-class String input-placeholder Specify the style class of placeholder disabled Boolean false Whether to disable maxlength Number 140 Maximum input length, not when set to 0 Limit the maximum length auto-focus Boolean false Automatically focus, pull up the keyboard. There can only be one input in the page. Set the auto-focus attribute focus Boolean false to make the input gain focus. Bindchange EventHandle When the input box loses focus, the bindchange event is triggered. event.detail={value:value} bindinput EventHandle Input other than date/time types. box, when the keyboard is input, the input event is triggered, event.detail={value:value}, the processing function can directly return a string, which will replace the content of the input box. bindfocus EventHandle Triggered when the input box is focused, event.detail = {value:value} bindblur EventHandle Triggered when the input box loses focus, event.detail = {value:value}button Related attributes
Attribute name type default value description size String default Valid values default, mini type String default The style type of the button, valid values primary, default, warn plain Boolean false Whether the button is hollow and the background color is transparent disabled Boolean false Whether loading is disabled Boolean false Whether there is a loading icon before the name formType String None Valid values: submit, reset, used for form components. Clicking will trigger the submit/reset event respectively. hover-class String button-hover specifies the style class of the button pressed. When hover-class="none", there is no click state effect. In this demo, the formType of the button is set to submit to activate the form submission event.
Example 2: Processing login form data
Modify login.js
// pages/login/login.jsPage({ data:{ userName:'', userPassword:'', }, formSubmit :function(e){ console.log(e.detail.value);//Format Object {userName: "user", userPassword: "password"} //Get form data var objData = e.detail.value; if( objData.userName && objData.userPassword){ //Storage form data synchronously wx.setStorageSync('userName', objData.userName); wx.setStorageSync('userPassword', objData.userPassword); //Jump to the success page wx .navigateTo({ url: '../index/index' }) } }, //After loading, handle the event // If there is local data, display it directly onLoad:function(options){ //Get local data var userName = wx.getStorageSync('userName'); var userPassword = wx.getStorageSync('userPassword'); console.log(userName); console.log(userPassword); if(userName){ this.setData({userName: userName }); } if(userPassword){ this.setData({userPassword: userPassword}); } }, onReady:function(){ // Page rendering completed}, onShow:function(){ // Page display}, onHide: function(){ // Page hidden}, onUnload:function(){ // Page closed}}) wx.getStorageSync and wx.setStorageSync are used here. Here, the above two methods are similar to HTML5 local storage. It is a synchronous storage method.
These two methods are very simple to use. The parameters are listed below:
wx.setStorageSync(KEY,DATA)
Attribute name type is required. Description key String is the specified key data Object/String in the local cache. It is the content that needs to be stored wx.getStorageSync
Attribute name type required description KEY String It is the specified key in the local cache. Modify login.wxml
Effect (after running again, the information is automatically filled in):
Example 3: Processing login form data (asynchronous)
The data is stored asynchronously here.
Modify login.js
// pages/login/login.jsPage({ data:{ userName:'', userPassword:'', }, formSubmit:function(e){ console.log(e. detail.value);//Format Object {userName: "user", userPassword: "password"} //Get form data var objData = e.detail.value; if(objData.userName && objData.userPassword){ // Synchronization Method to store form data wx.setStorage({ key:'userName', data:objData.userName }); wx.setStorage({ key:'userPassword', data:objData.userPassword }); //Jump to the success page wx .navigateTo({ url: '../index/index' }) } }, //After loading, handle the event // If there is local data, display it directly onLoad:function(options){ var that = this; / /Get local data wx.getStorage({ key: 'userName', success: function(res){ console.log(res.data); that.setData({userName: res.data}); } }); wx. getStorage({ key: 'userPassword', success: function(res){ console.log(res.data); that.setData({userPassword: res.data}); } }); }, onReady:function(){ // Page rendering completed}, onShow:function(){ // Page display}, onHide:function(){ // Page hidden}, onUnload:function(){ // Page closed}})wx.setStorage(OBJECT)
Attribute name type required description key String is the specified key in the local cache data Object/String is the content that needs to be stored success Function No interface calls the callback function that succeeds fail Function No interface calls the callback function that fails complete Function No interface The callback function at the end of the call (will be executed if the call is successful or failed) wx.getStorage(OBJECT)
Attribute name type required Description key String is the specified key in the local cache success Function is the callback function called by the interface, res = { data: the content corresponding to the key} fail Function No The callback function that fails to call the interface complete Function No The callback function that ends the interface call (both successful and failed calls will be executed) Example 4: Clear local data
I won’t go into details here Now, let’s directly introduce these two methods of clearing local data.
wx.clearStorage()
wx.clearStorageSync()
This can be achieved by executing it directly.
For more WeChat applet: simple form, local storage related articles, please pay attention to the PHP Chinese website!