您好,登錄后才能下訂單哦!
今天小編給大家分享一下怎么開發(fā)的第一個小程序的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
在使用wx.request
后獲得的數(shù)據要寫入Page
的data
,與Vue.js不同的是,小程序需要調用this.setData
,同時里面如果寫入時修改到的對象里面的屬性,應定義一個變量連接對象和屬性合成的字符串,再通過中括號[]
將其包起來。例如:
var temp='person.name'; ...... this.setData({ [temp]:'Mike' })
在界面中涉及到評分的star化,這里采用了一個比較笨的方法。就是準備星星可能的三種狀態(tài)的圖片,然后根據分數(shù)算出具體的分數(shù)數(shù)組,最后遍歷該數(shù)組,對應每一顆星星應該展示的狀態(tài)。
<block wx:for="{{dbMarkArr||myStarArr}}" wx-for-item="item" > <image wx:if="{{item===0}}" src='../../static/image/empty.png'></image> <image wx:if="{{item===1}}" src='../../static/image/half.png'></image> <image wx:if="{{item===2}}" src='../../static/image/full.png'></image> </block>
在這里使用了小程序的模版template
。需要注意的是這里有一個坑,模版的文件名字和模版里的name
必須一致。
在頁面渲染時,有可能因為網絡問題導致豆瓣數(shù)據返回不夠及時,然后進一步導致頁面模版設置數(shù)據時,data
里的值不是需要的值。這里糾結了很久,最后選擇了一個相當不優(yōu)雅的做法,即將設置相關數(shù)據的函數(shù)延時了2秒后執(zhí)行。如果豆瓣數(shù)據能在2秒內返回,那么問題看起來解決了,如果2秒內沒有獲得有效數(shù)據,問題就并沒有解決。再者,2秒對用戶體驗絕對有相當大的影響,但是這里也不知道該用什么辦法解決...
在小程序的初期,本來打算實現(xiàn)日歷點擊跳轉到對應電影頁面的功能,后來覺得不好便沒做,不過日歷倒是實現(xiàn)了一遍。思路比較清晰,先獲取當前時間,并計算出當前月份的第一天和最后一天分別對應的是星期幾,接著再計算第一天前和最后一天后應該還應該顯示幾天。然后將上個月的、這個月的、下個月的連接成一個數(shù)組,接著根據數(shù)組分周:
for (var i = 0; i < calendar.length; i++) { if (i % 7 == 0) { weeks[parseInt(i / 7)] = new Array(7); } weeks[parseInt(i / 7)][i % 7] = calendar[i]; }
接著渲染:
<view class='calendarBody'> <block wx:for="{{calendar.weeks}}" wx:for-item="weeks" > <view class='calendar-body-weeks'> <block wx:for="{{weeks}}" wx:for-item="day"> <view class="calendar-body-day {{calendar.month==day.month&&calendar.date==day.date? 'is-current':' '}} {{calendar.month!=day.month?'nou-curMonth':' '}}" data-date='{{day.date}}' bindtap='selectDate'>{{day.date}}</view> </block> </view> </block> </view>
以上就是“怎么開發(fā)的第一個小程序”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業(yè)資訊頻道。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。