12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- let itemCount = 100
- let items = [...new Array(itemCount)].map((v, i) => i)
- import ad from '../index/ad'
- ad({
- data: {
- disableScroll: false,
- height: 300,
- itemHeight: 50,
- itemBuffer: 30,
- scrollToIndex: 0,
- scrollWithAnimation: false,
- },
- onLoad() {
- this.updated(items)
- },
- updated(items) {
- const startTime = Date.now()
- this.virtualList = this.virtualList || this.selectComponent('#wux-virtual-list')
- this.virtualList.render(items, () => {
- const diffTime = Date.now() - startTime
- console.log(`onSuccess - render time: ${diffTime}ms`)
- })
- },
- loadData(e) {
- if (itemCount >= 1000) return
- if (this.data.disableScroll) return
- this.setData({ disableScroll: true })
- wx.showLoading()
- setTimeout(() => {
- itemCount += 100
- items = [...new Array(itemCount)].map((v, i) => i)
- this.updated(items)
- this.setData({ disableScroll: false })
- wx.hideLoading()
- }, 3000)
- console.log('loadData', e.detail)
- },
- onChange(e) {
- const { startIndex, endIndex } = e.detail
- if (this.data.startIndex !== startIndex || this.data.endIndex !== endIndex) {
- this.setData(e.detail)
- console.log('onChange', e.detail)
- }
- },
- onScrollToLower(e) {
- this.loadData(e)
- console.log('onScrollToLower', e)
- },
- onInputBlur(e) {
- const { meta } = e.currentTarget.dataset
- this.setData({ [meta]: e.detail.value })
- console.log('onInputBlur', e)
- },
- onSwicth(e) {
- const { meta } = e.currentTarget.dataset
- this.setData({ [meta]: e.detail.value })
- console.log('onSwicth', e)
- },
- })
|