Skip to content

Commit 777b313

Browse files
committed
feat: version 2.1
1 parent 0cf2ab2 commit 777b313

File tree

11 files changed

+37
-54
lines changed

11 files changed

+37
-54
lines changed

packages/core/src/animater/Animation.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import {
55
requestAnimationFrame,
66
cancelAnimationFrame,
77
EaseFn,
8+
Probe,
89
} from '@better-scroll/shared-utils'
910

1011
export default class Animation extends Base {
@@ -17,7 +18,7 @@ export default class Animation extends Base {
1718
// time is 0
1819
if (!time) {
1920
this.translate(endPoint)
20-
if (this.isRealtimeProbeType) {
21+
if (this.options.probeType === Probe.Realtime) {
2122
this.hooks.trigger(this.hooks.eventTypes.move, endPoint)
2223
}
2324
this.hooks.trigger(this.hooks.eventTypes.end, endPoint)
@@ -34,12 +35,13 @@ export default class Animation extends Base {
3435
) {
3536
let startTime = getNow()
3637
const destTime = startTime + duration
38+
const isRealtimeProbeType = this.options.probeType === Probe.Realtime
3739
const step = () => {
3840
let now = getNow()
3941
// js animation end
4042
if (now >= destTime) {
4143
this.translate(endPoint)
42-
if (this.isRealtimeProbeType) {
44+
if (isRealtimeProbeType) {
4345
this.hooks.trigger(this.hooks.eventTypes.move, endPoint)
4446
}
4547
this.hooks.trigger(this.hooks.eventTypes.end, endPoint)
@@ -56,7 +58,7 @@ export default class Animation extends Base {
5658
})
5759
this.translate(newPoint)
5860

59-
if (this.isRealtimeProbeType) {
61+
if (isRealtimeProbeType) {
6062
this.hooks.trigger(this.hooks.eventTypes.move, newPoint)
6163
}
6264

packages/core/src/animater/Base.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@ export default abstract class Base implements ExposedAPI {
1919
pending: boolean
2020
callStopWhenPending: boolean
2121
forceStopped: boolean
22-
_reflow: number
23-
isRealtimeProbeType: boolean;
22+
_reflow: number;
2423
[key: string]: any
2524

2625
constructor(
@@ -39,7 +38,6 @@ export default abstract class Base implements ExposedAPI {
3938
'time',
4039
'timeFunction',
4140
])
42-
this.isRealtimeProbeType = options.probeType === Probe.Realtime
4341
this.setContent(content)
4442
}
4543

packages/core/src/animater/Transition.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import {
33
requestAnimationFrame,
44
cancelAnimationFrame,
55
EaseFn,
6+
Probe,
67
} from '@better-scroll/shared-utils'
78
import Base from './Base'
89
import { TranslaterPoint } from '../translater'
@@ -70,7 +71,9 @@ export default class Transition extends Base {
7071
this.transitionTime(time)
7172
this.translate(endPoint)
7273

73-
if (time && this.isRealtimeProbeType) {
74+
const isRealtimeProbeType = this.options.probeType === Probe.Realtime
75+
76+
if (time && isRealtimeProbeType) {
7477
this.startProbe(startPoint, endPoint)
7578
}
7679

@@ -80,7 +83,7 @@ export default class Transition extends Base {
8083
// so we forceupdate by reflow
8184
if (!time) {
8285
this._reflow = this.content.offsetHeight
83-
if (this.isRealtimeProbeType) {
86+
if (isRealtimeProbeType) {
8487
this.hooks.trigger(this.hooks.eventTypes.move, endPoint)
8588
}
8689
this.hooks.trigger(this.hooks.eventTypes.end, endPoint)

packages/examples/vue/components/pulldown/default.vue

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,7 @@ function generateData() {
4848
}
4949
5050
const TIME_BOUNCE = 800
51-
const TIME_STOP = 600
52-
const REQUEST_TIME = 3000
51+
const REQUEST_TIME = 1000
5352
const THRESHOLD = 70
5453
const STOP = 56
5554
let STEP = 0
@@ -70,6 +69,7 @@ export default {
7069
this.bscroll = new BScroll(this.$refs.bsWrapper, {
7170
scrollY: true,
7271
bounceTime: TIME_BOUNCE,
72+
useTransition: false,
7373
pullDownRefresh: {
7474
threshold: THRESHOLD,
7575
stop: STOP
@@ -97,17 +97,11 @@ export default {
9797
this.finishPullDown()
9898
},
9999
async finishPullDown() {
100-
const stopTime = TIME_STOP
101-
await new Promise(resolve => {
102-
setTimeout(() => {
103-
this.bscroll.finishPullDown()
104-
resolve()
105-
}, stopTime)
106-
})
100+
this.bscroll.finishPullDown()
107101
setTimeout(() => {
108102
this.beforePullDown = true
109103
this.bscroll.refresh()
110-
}, TIME_BOUNCE)
104+
}, TIME_BOUNCE + 100)
111105
},
112106
async requestData() {
113107
try {

packages/examples/vue/components/slide/banner.vue

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -45,10 +45,7 @@
4545
this.slide = new BScroll(this.$refs.slide, {
4646
scrollX: true,
4747
scrollY: false,
48-
slide: {
49-
autoplay: false,
50-
loop: true
51-
},
48+
slide: true,
5249
momentum: false,
5350
bounce: false,
5451
probeType: 3

tests/e2e/compose-plugins/pullup-pulldown-nested.e2e.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,6 @@ describe('Compose/pullup-pulldown-nested', () => {
7878
})
7979
const y = getTranslate(transformText, 'y')
8080

81-
expect(y).toBe(-810)
81+
expect(y).toBe(-814)
8282
})
8383
})

tests/e2e/nested-scroll/horizontal-in-vertical.e2e.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ describe('Nested horizontal-in-vertical scroll', () => {
4444

4545
await page.dispatchScroll({
4646
x: 100,
47-
y: 450,
47+
y: 200,
4848
xDistance: -300,
4949
yDistance: 0,
5050
gestureSourceType: 'touch',

tests/e2e/nested-scroll/horizontal.e2e.ts

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,6 @@ describe('Nested horizontal scroll', () => {
4040
it('should only make innerBScroll scroll', async () => {
4141
await page.waitFor(300)
4242

43-
const oldOuterTransformText = await page.$eval('.outer-content', (node) => {
44-
return window.getComputedStyle(node).transform
45-
})
46-
47-
const oldOuterTranslateX = getTranslate(oldOuterTransformText!, 'x')
48-
4943
await page.dispatchScroll({
5044
x: 270,
5145
y: 110,
@@ -60,7 +54,7 @@ describe('Nested horizontal scroll', () => {
6054
return window.getComputedStyle(node).transform
6155
})
6256
const outerTranslateX = getTranslate(outerTransformText!, 'x')
63-
await expect(outerTranslateX).toBe(oldOuterTranslateX)
57+
await expect(outerTranslateX).toBe(0)
6458

6559
const innerTransformText = await page.$eval('.inner-content', (node) => {
6660
return window.getComputedStyle(node).transform

tests/e2e/nested-scroll/vertical.e2e.ts

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -40,14 +40,9 @@ describe('Nested vertical scroll', () => {
4040
it('should only make innerBScroll scroll and outerBScroll stop', async () => {
4141
await page.waitFor(300)
4242

43-
const oldOuterTransformText = await page.$eval('.outer-content', (node) => {
44-
return window.getComputedStyle(node).transform
45-
})
46-
const oldOuterTranslateY = getTranslate(oldOuterTransformText!, 'y')
47-
4843
await page.dispatchScroll({
4944
x: 160,
50-
y: 430,
45+
y: 300,
5146
xDistance: 0,
5247
yDistance: -70,
5348
gestureSourceType: 'touch',
@@ -60,7 +55,7 @@ describe('Nested vertical scroll', () => {
6055
})
6156

6257
const outerTranslateY = getTranslate(outerTransformText!, 'y')
63-
await expect(outerTranslateY).toBe(oldOuterTranslateY)
58+
await expect(outerTranslateY).toBe(0)
6459

6560
const innerTransformText = await page.$eval('.inner-content', (node) => {
6661
return window.getComputedStyle(node).transform
@@ -75,7 +70,7 @@ describe('Nested vertical scroll', () => {
7570

7671
await page.dispatchScroll({
7772
x: 160,
78-
y: 430,
73+
y: 300,
7974
xDistance: 0,
8075
yDistance: -300,
8176
speed: 3000,
@@ -93,7 +88,7 @@ describe('Nested vertical scroll', () => {
9388

9489
await page.dispatchScroll({
9590
x: 160,
96-
y: 430,
91+
y: 300,
9792
xDistance: 0,
9893
yDistance: -100,
9994
gestureSourceType: 'touch',

tests/e2e/picker/double-column.e2e.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ describe('Double column picker', () => {
1212
})
1313
beforeEach(async () => {
1414
await page.reload({
15-
waitUntil: 'domcontentloaded'
15+
waitUntil: 'domcontentloaded',
1616
})
1717
})
1818

@@ -23,7 +23,7 @@ describe('Double column picker', () => {
2323

2424
await page.waitFor(500)
2525

26-
const displayText = await page.$eval('.picker-panel', node => {
26+
const displayText = await page.$eval('.picker-panel', (node) => {
2727
return window.getComputedStyle(node).display
2828
})
2929

@@ -44,11 +44,11 @@ describe('Double column picker', () => {
4444
// wait for transition ends
4545
await page.waitFor(100)
4646

47-
const innerText = await page.$eval('.open', node => {
47+
const innerText = await page.$eval('.open', (node) => {
4848
return node.textContent
4949
})
5050

51-
await expect(innerText).toBe('Venomancer-Durable')
51+
await expect(innerText).toBe('Venomancer-0__Durable-0')
5252
})
5353

5454
it('should scroll correctly when simulate touch event on each column', async () => {
@@ -64,7 +64,7 @@ describe('Double column picker', () => {
6464
y: 630,
6565
xDistance: 0,
6666
yDistance: -70,
67-
gestureSourceType: 'touch'
67+
gestureSourceType: 'touch',
6868
})
6969

7070
// second column
@@ -73,14 +73,14 @@ describe('Double column picker', () => {
7373
y: 630,
7474
xDistance: 0,
7575
yDistance: -70,
76-
gestureSourceType: 'touch'
76+
gestureSourceType: 'touch',
7777
})
7878

7979
// wait for transition ends
8080
await page.waitFor(1000)
8181

82-
const transformTexts = await page.$$eval('.wheel-scroll', nodes => {
83-
return nodes.map(node => window.getComputedStyle(node).transform)
82+
const transformTexts = await page.$$eval('.wheel-scroll', (nodes) => {
83+
return nodes.map((node) => window.getComputedStyle(node).transform)
8484
})
8585

8686
for (const transformText of transformTexts) {

0 commit comments

Comments
 (0)