亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

微信小程序頁面傳值實例分析

發布時間:2020-10-23 21:50:49 來源:腳本之家 閱讀:90 作者:Angeladaddy 欄目:web開發

微信小程序頁面傳值實例分析

最近組里開發小程序,遇到了一個前端亙古不變的話題:頁面傳值

剛開始使用路徑傳參解決,但是眾所周知:

各瀏覽器HTTP Get請求URL最大長度并不相同,幾類常用瀏覽器最大長度及超過最大長度后提交情況如下:
IE6.0 :url最大長度2083個字符,超過最大長度后無法提交。
IE7.0 :url最大長度2083個字符,超過最大長度后仍然能提交,但是只能傳過去2083個字符。
firefox 3.0.3 :url最大長度7764個字符,超過最大長度后無法提交。
Opera 9.52 :url最大長度7648個字符,超過最大長度后無法提交。
Google Chrome 2.0.168 :url最大長度7713個字符,超過最大長度后無法提交。

所以覺得不靠譜。

研究了一下官網,發現有兩種方式可以“比較優雅”地干這件事,當然不能和vuex/flux比。

1.使用全局變量

在項目app.js中定義globalData

App({
 globalData:{
 userInfo:'angeladaddy'
}
});

在需要的地方使用:

getGlobalVar:function(){
 var that=this;
that.setData({
 globalvar_str:JSON.stringify(getApp().globalData)
}) 
}

當然也可以隨時賦值:

onLoad:function(options){
 getApp().globalData.userInfo+=' is an awesome man';
},

效果:

微信小程序頁面傳值實例分析

2.使用模板

根據官方介紹如下:

首先定義模板,使用name屬性

<template name="msgItem">
 <view>
  <text> {{index}}: {{msg}} </text>
  <text> Time: {{time}} </text>
 </view>
</template>

接著,使用模板

使用 is 屬性,聲明需要的使用的模板,然后將模板所需要的 data 傳入,如:

<template is="msgItem" data="{{...item}}"/>

給item賦值以顯示模板數據

Page({
data: {
 item: {
  index: 0,
  msg: 'this is a template',
  time: '2016-09-15'
 }
}
})

這樣就一下解決了頁面傳值問題

后記:既然小程序可以使用ES6的所有特性,那么那個var that=this又是什么鬼?為何不能用箭頭函數解決作用域問題?回頭再試試。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

威信县| 米易县| 繁昌县| 鄂伦春自治旗| 铁岭县| 迁安市| 合阳县| 漯河市| 蓬安县| 蛟河市| 图木舒克市| 云浮市| 利辛县| 麻栗坡县| 蓬安县| 利川市| 夏河县| 余江县| 苗栗市| 吉首市| 隆林| 新疆| 清丰县| 漾濞| 南丰县| 略阳县| 建昌县| 灵丘县| 观塘区| 诏安县| 定安县| 澎湖县| 城口县| 建瓯市| 南开区| 东乡族自治县| 武平县| 应城市| 和平县| 左云县| 武宁县|