微信小程序傳值(傳遞數據)的一些方法匯總
URL參數傳遞:可以通過URL參數的方式將數據傳遞給小程序頁面。
Storage存儲:可以通過Storage API將數據存儲在本地,然后在小程序頁面中讀取。
全局變量:可以將數據存儲在小程序的全局變量中,然后在小程序頁面中讀取。
數據綁定:可以通過數據綁定的方式將數據傳遞給小程序頁面。
自定義事件:可以通過自定義事件的方式將數據傳遞給小程序頁面。
WebSocket:可以通過WebSocket協議將數據傳遞給小程序頁面。
數據庫:可以通過小程序提供的數據庫API將數據存儲在數據庫中,然后在小程序頁面中讀取。
1、使用全局變量傳遞數據
利用app.js 中的 globalData 將數據存儲為全局變量,在需要使用的頁面通過getApp().globalData獲取數據
app.js
App({ globalData:{ data: { name: 'demo' } } })
使用組件
let app = getApp() app.globalData.data
2、使用本地存儲數據傳遞
使用小程序提供緩存
同步緩存:wx.setStorageSync 與 wx.getStorageSync
異步緩存:wx.setStorage 與 wx.getStorage
移除本地緩存:wx.removeStorageSync(同步)、wx.removeStorage(異步)
// 將數據存儲在本地緩存中指定的 key 中 wx.setStorgaeSync('data','hello') // 從本地緩存中同步獲取指定 key 的內容 wx.getStorageSync('data') // 從本地緩存中移除指定 key wx.removeStorgae('data')
3、使用路由傳遞數據
傳遞組件
wx.navigateTo({ url: 'test?id=1', success: (res)=> { // 通過 eventChannel 向被打開頁面?zhèn)魉蛿祿? res.eventChannel.emit('acceptDataFromOpenerPage', { data: 'test' }) } })
使用組件
Page({ onLoad: function(option){ console.log(option.query) // 監(jiān)聽 acceptDataFromOpenerPage 事件,獲取上一頁面通過 eventChannel 傳送到當前頁面的數據 eventChannel.on('acceptDataFromOpenerPage', (data)=> { console.log(data) }) } })
4、父子組件使用selectComponent('#頁面id'),triggerEvent('方法名','值')
<view id='demo' bind:returnDate='handleReturnDate'><view> Page({ handleData(data){ this.selectComponent("#demo").showModal(data); } // 子組件傳遞過來的值 handleReturnDate(data){ console.log(data) } }) Component({ methods:{ // 父組件傳遞過來的數據 showModal(data){ console.log(data) }, submit(){ // 子組件傳遞數據給父組件 this.triggerEvent("returnDate", sportsGuidance); } } })
5、子組件通過properties接收:
父組件parent
parent.wxml <view> <child :name='jack'></child> </view> parent.json { "usingComponents": { "child":"/child/child", }, "navigationBarTitleText": "父組件的導航標題" }
子組件 child
child.wxml
<view> 父組件傳遞過來的name:{{name}} </view>
child.js
Component({ // 接受父組件傳遞過來的屬性 properties:{ name:String //簡化的定義方式 //name:{ //type:String, //value:'' //} }, // 私有數據,可用于模板渲染 data:{}, // 組件生命周期聲明對象 lifetime:{ }, // 組件所在頁面的生命周期聲明對象 pageLifetimes:{ }, // 事件響應函數和任意的自定義方法 methods:{} })
總結
到此這篇關于微信小程序傳值(傳遞數據)的一些方法匯總的文章就介紹到這了,更多相關微信小程序傳值 傳遞數據內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
一個非常好用的文字滾動的案例,鼠標懸浮可暫停[兩種方案任選]
本文主要介紹了非常好用的文字滾動的案例,鼠標懸浮可暫停的兩種實現方案,代碼簡潔,可收藏備用。需要的朋友來看下吧2016-12-12JavaScript的DOM與BOM的區(qū)別與用法詳解
這篇文章主要為大家詳細介紹了JavaScript的DOM與BOM的區(qū)別與用法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-03-03layui 監(jiān)聽彈窗關閉并刷新父級table的場景分析
這篇文章主要介紹了layui 監(jiān)聽彈窗關閉并刷新父級table的場景分析,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧2024-07-07javascript 獲取HTML DOM父、子、臨近節(jié)點
經常要獲取頁面中某個元素,然后更新該元素的樣式、內容等。如何獲取要更新的元素,是首先要解決的問題。這里簡單做一下總結2014-06-06