- 資訊首頁(yè) > 開(kāi)發(fā)技術(shù) > web開(kāi)發(fā) >
- 微信小程序Page中data數據操作和函數調用的案例代
這篇文章主要介紹了微信小程序Page中data數據操作和函數調用的案例代碼,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著(zhù)大家一起了解一下。
微信小程序 詳解Page中data數據操作和函數調用
Page() 函數用來(lái)注冊一個(gè)頁(yè)面。接受一個(gè) object 參數,其指定頁(yè)面的初始數據、生命周期函數、事件處理函數等。
//index.js <pre code_snippet_id="2049407" snippet_file_name="blog_20161214_1_1145312" name="code" class="javascript">Page({ data: { text: "This is page data.",</pre><pre code_snippet_id="2049407" snippet_file_name="blog_20161214_2_861121" name="code" class="javascript"> sliderOffset: 0, sliderLeft: 0, state:{ genre:[], genre_index: 0, model:[], model_index: 0, terminalStatus:'', } }, onLoad: function(options) { // Do some initialize when page load. }, onReady: function() { // Do something when page ready. }, onShow: function() { // Do something when page show. }, onHide: function() { // Do something when page hide. }, onUnload: function() { // Do something when page close. }, onPullDownRefresh: function() { // Do something when pull down. }, onReachBottom: function() { // Do something when page reach bottom. }, // Event handler. viewTap: function () { var p = this.position ball(p, 150) function ball(x, y) { console.log(x,y) } }, customData: { hi: 'MINA' } })</pre><br> <p></p> <pre></pre> <br> 1、設置data數據 <p></p> <p><span >setData 函數用于將數據從邏輯層發(fā)送到視圖層,同時(shí)改變對應的 this.data 的值。<br> 注意:<br> (1)、直接修改 this.data 無(wú)效,無(wú)法改變頁(yè)面的狀態(tài),還會(huì )造成數據不一致。<br> (2)、單次設置的數據不能超過(guò)1024kB,請盡量避免一次設置過(guò)多的數據。<br> </span></p> <p><span >setData() 參數格式:接受一個(gè)對象,以 key,value 的形式表示將 this.data 中的 key 對應的值改變成 value。其中 key 可以非常靈活,以數據路徑的形式給出,如 array[2].message,a.b.c.d,并且不需要在 this.data 中預先定義。<br> </span></p> <p><span >下面設置data中的text和genre_index的值</span></p> <p><span ></span></p><pre code_snippet_id="2049407" snippet_file_name="blog_20161214_3_1831450" name="code" class="html">this.setData({ 'state.genre_index':1, text:'data value' })</pre><p></p> <p>2、獲取data數據</p> <p>獲取data中的text和genre_index值需要使用this</p> <p></p><pre code_snippet_id="2049407" snippet_file_name="blog_20161214_4_5833420" name="code" class="javascript"><pre code_snippet_id="2049407" snippet_file_name="blog_20161214_4_5833420" name="code" class="javascript">var gener_index=this.data.state.genre_index</pre><pre code_snippet_id="2049407" snippet_file_name="blog_20161214_5_8406932" name="code" class="javascript">var text=this.data.text</pre><p></p> <pre></pre> 3、調用viewTap函數 <p></p> <p>在viewTap函數中調用內部的ball函數可以直接調用,如果需要在onReady函數中調用viewTap函數需要使用this。</p> <p></p><pre code_snippet_id="2049407" snippet_file_name="blog_20161214_6_6869005" name="code" class="html">onReady: function () { this.drawBall() },</pre><br> <br> <br> <p></p> <br> </pre>
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自互聯(lián)網(wǎng)轉載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權請聯(lián)系站長(cháng)郵箱:ts@56dr.com進(jìn)行舉報,并提供相關(guān)證據,一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容。
Copyright ? 2009-2021 56dr.com. All Rights Reserved. 特網(wǎng)科技 版權所有 珠海市特網(wǎng)科技有限公司 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2 建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站