Skip to content

Commit b743448

Browse files
🐛 [bug]fix scrolling up will refresh page.
1 parent d45d8d6 commit b743448

File tree

3 files changed

+18
-7
lines changed

3 files changed

+18
-7
lines changed

lib/DatePickerItem.js

+17-5
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,13 @@ class DatePickerItem extends Component {
4141
this._iniDates(this.props.value);
4242
}
4343

44+
componentDidMount() {
45+
const viewport = this.viewport;
46+
viewport.addEventListener('touchstart', this.handleContentTouch, false);
47+
viewport.addEventListener('touchmove', this.handleContentTouch, false);
48+
viewport.addEventListener('touchend', this.handleContentTouch, false);
49+
viewport.addEventListener('mousedown', this.handleContentMouseDown, false);
50+
}
4451

4552
componentWillReceiveProps(nextProps) {
4653
if (nextProps.value.getTime() === this.props.value.getTime()) {
@@ -67,6 +74,14 @@ class DatePickerItem extends Component {
6774
!shallowEqual(nextState, this.state);
6875
}
6976

77+
componentWillUnmount() {
78+
const viewport = this.viewport;
79+
viewport.removeEventListener('touchstart', this.handleContentTouch, false);
80+
viewport.removeEventListener('touchmove', this.handleContentTouch, false);
81+
viewport.removeEventListener('touchend', this.handleContentTouch, false);
82+
viewport.removeEventListener('mousedown', this.handleContentMouseDown, false);
83+
}
84+
7085
_iniDates(date) {
7186
const { typeName } = this.props;
7287
const dates = Array(...Array(DATE_LENGTH))
@@ -258,11 +273,8 @@ class DatePickerItem extends Component {
258273
return (
259274
<div className="datepicker-col-1">
260275
<div
261-
className="datepicker-viewport"
262-
onTouchStart={this.handleContentTouch}
263-
onTouchMove={this.handleContentTouch}
264-
onTouchEnd={this.handleContentTouch}
265-
onMouseDown={this.handleContentMouseDown}>
276+
ref={viewport => this.viewport = viewport} // eslint-disable-line
277+
className="datepicker-viewport">
266278
<div className="datepicker-wheel">
267279
<ul
268280
ref="scroll"

lib/index.css

-1
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,6 @@
106106
width: 100%;
107107
}
108108

109-
110109
.datepicker-scroll {
111110
list-style-type: none;
112111
&>li {

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -83,4 +83,4 @@
8383
"webpack-dev-server": "^1.14.1"
8484
},
8585
"license": "ISC"
86-
}
86+
}

0 commit comments

Comments
 (0)