网友真实露脸自拍10p,成人国产精品秘?久久久按摩,国产精品久久久久久无码不卡,成人免费区一区二区三区

小程序模板網

微信小程序開發之數據存儲 參數傳遞 數據緩存

發布時間:2017-12-08 17:43 所屬欄目:小程序開發教程

微信小程序開發內測一個月.數據傳遞的方式很少.經常遇到頁面銷毀后回傳參數的問題,小程序中并沒有類似Android的startActivityForResult的方法,也沒有類似廣播這樣的通訊方式,更沒有類似eventbus的輪子可用.

現在已知傳遞參數的方法只找到三種,先總結下.由于正處于內測階段,文檔也不是很穩定,經常修改,目前尚沒有人造輪子.

先上GIF:

1.APP.js

我把常用且不會更改的參數放在APP.js的data里面了.在各個page中都可以拿到var app = getApp();

app上就可以拿到存在data中的參數.

 

2. wx.navigateTo({})中URL攜帶參數

demo中已經寫出:

 wx.navigateTo({
      url: "../newpage/newpage?infofromindex=" + this.data.infofromindex,
  });

頁面間傳遞參數的筆記

 

3.wx.setStorage(OBJECT) 數據緩存

微信開發文檔中的數據緩存方法:

①存儲數據

 try {
      wx.setStorageSync('infofrominput', this.data.infofrominput)
    } catch (e) {
 }

②獲取數據

  //獲取
        wx.getStorage({
            key: 'infofrominput',
            success: function (res) {
                _this.setData({
                    infofromstorage: res.data,
                })
            }
        })

 

key是本地緩存中的指定的 key,data是需要存儲的內容.

詳情見微信小程序開發文檔:文檔

 

貼上代碼:

1.index.js

 

[javascript] view plain copy
 
  1. //index.js  
  2. //獲取應用實例  
  3. var app = getApp()  
  4. Page({  
  5.   data: {  
  6.     info: app.data.info,  
  7.     infofromindex: '來自index.js的信息',  
  8.     infofrominput: ''  
  9.   },  
  10.   onLoad: function () {  
  11.   },  
  12.   //跳轉到新頁面  
  13.   gotonewpage: function () {  
  14.     wx.navigateTo({  
  15.       url: "../newpage/newpage?infofromindex=" + this.data.infofromindex,  
  16.     });  
  17.   },  
  18.   //獲取輸入值  
  19.   searchInputEvent: function (e) {  
  20.     console.log(e.detail.value)  
  21.     this.setData({ infofrominput: e.detail.value })  
  22.   },  
  23.   //保存參數  
  24.   saveinput: function () {  
  25.     try {  
  26.       wx.setStorageSync('infofrominput'this.data.infofrominput)  
  27.     } catch (e) {  
  28.     }  
  29.   }  
  30. })  
2.index.wxml
[html] view plain copy
 
  1. <!--index.wxml-->  
  2. <view>  
  3. <button style="background-color:#00ff00;margin:20rpx" bindtap="gotonewpage">跳轉</button>  
  4. <input  style="background-color:#eee;margin:20rpx;height:80rpx" placeholder="請輸入需要保存的參數" bindinput="searchInputEvent" />  
  5. <button style="background-color:#ff0000;margin:20rpx" bindtap="saveinput">存入Storage</button>  
  6. </view>  
3.newpage.js

 

[javascript] view plain copy
 
  1. //newpage.js  
  2. //獲取應用實例  
  3. var app = getApp()  
  4. Page({  
  5.     data: {  
  6.         infofromapp: app.data.infofromapp,  
  7.         infofromindex: '',  
  8.         infofromstorage: '',  
  9.     },  
  10.     onLoad: function (options) {  
  11.         var _this = this;  
  12.         var infofromindex = options.infofromindex;  
  13.         this.setData({  
  14.             infofromindex: infofromindex  
  15.         })  
  16.         //獲取  
  17.         wx.getStorage({  
  18.             key: 'infofrominput',  
  19.             success: function (res) {  
  20.                 _this.setData({  
  21.                     infofromstorage: res.data,  
  22.                 })  
  23.             }  
  24.         })  
  25.     }  
  26. })  
4.newpage.wxml

 

[html] view plain copy
 
  1. <!--newpage.wxml-->  
  2. <view style="width:100%;margin:30rpx">infofromapp:{{infofromapp}}</view>  
  3. <view style="width:100%;margin:30rpx">infofromindex:{{infofromindex}}</view>  
  4. <view style="width:100%;margin:30rpx">infofromstorage:{{infofromstorage}}</view>  
5.app.js

 

[javascript] view plain copy
 
  1. //app.js  
  2. App({  
  3.   data: {  
  4.     infofromapp: '來自APP.js的信息'  
  5.   },  
  6.   onLaunch: function () {  
  7.   
  8.   }  
  9. })  


易優小程序(企業版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://www.xiuhaier.com/wxmini/doc/course/18090.html 復制鏈接 如需定制請聯系易優客服咨詢:800182392 點擊咨詢
QQ在線咨詢
AI智能客服 ×