overscroll
Version:
51 lines (35 loc) • 1.42 kB
JavaScript
;
exports.__esModule = true;
var _compose = require('./utils/compose');
var _compose2 = _interopRequireDefault(_compose);
var _scope = require('./scope');
var _scope2 = _interopRequireDefault(_scope);
var _init = require('./init');
var _init2 = _interopRequireDefault(_init);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
function OverScroll(scope) {
var mode = scope.mode,
animation = scope.animation,
initialPosition = scope.position,
onDestroy = scope.onDestroy,
onInit = scope.onInit;
var _animation$run = animation.run(),
scrollTo = _animation$run.scrollTo,
position = _animation$run.position,
scrollToSection = _animation$run.scrollToSection;
if (mode === 'scroll') {
scrollTo.apply(undefined, _toConsumableArray(initialPosition).concat([true]));
}
if (mode === 'section') {
scrollToSection(initialPosition, true);
}
// 初始化事件
onInit();
return {
position: position,
scrollTo: mode === 'scroll' ? scrollTo : scrollToSection,
destroy: onDestroy
};
}
exports['default'] = (0, _compose2['default'])(OverScroll, _init2['default'], _scope2['default']);