You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 line
5.9 KiB
1 line
5.9 KiB
5 years ago
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_classNames5=_interopRequireDefault(require("../helpers/classNames"));function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _defineProperty(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}var defaultStyle="transition: transform .4s; transform: translate3d(0px, 0px, 0px) scale(1);";(0,_baseComponent.default)({properties:{prefixCls:{type:String,value:"wux-refresher"},pullingIcon:{type:String,value:""},pullingText:{type:String,value:"下拉刷新"},refreshingIcon:{type:String,value:""},refreshingText:{type:String,value:"正在刷新"},disablePullingRotation:{type:Boolean,value:!1},distance:{type:Number,value:30},prefixLCls:{type:String,value:"wux-loader"},isShowLoadingText:{type:Boolean,value:!1},loadingText:{type:String,value:"正在加载"},loadNoDataText:{type:String,value:"没有更多数据"},scrollTop:{type:Number,value:0,observer:"onScroll"}},data:{style:defaultStyle,visible:!1,active:!1,refreshing:!1,tail:!1,lVisible:!1,noData:!1,windowHeight:0,newContentHeight:0,oldContentHeight:0,loading:!1},computed:{classes:["prefixCls, pullingText, pullingIcon, disablePullingRotation, refreshingText, refreshingIcon, visible, active, refreshing, tail, prefixLCls, loading, noData",function(t,e,i,n,a,s,o,r,c,l,h,d,f){var u,g;return{wrap:(0,_classNames5.default)(t,(_defineProperty(u={},"".concat(t,"--hidden"),!o),_defineProperty(u,"".concat(t,"--visible"),o),_defineProperty(u,"".concat(t,"--active"),r),_defineProperty(u,"".concat(t,"--refreshing"),c),_defineProperty(u,"".concat(t,"--refreshing-tail"),l),u)),cover:"".concat(t,"__cover"),content:(0,_classNames5.default)("".concat(t,"__content"),_defineProperty({},"".concat(t,"__content--text"),e||a)),iconPulling:(0,_classNames5.default)("".concat(t,"__icon-pulling"),_defineProperty({},"".concat(t,"__icon-pulling--disabled"),n)),textPulling:"".concat(t,"__text-pulling"),iconRefreshing:"".concat(t,"__icon-refreshing"),textRefreshing:"".concat(t,"__text-refreshing"),pIcon:i||"".concat(t,"__icon--arrow-down"),rIcon:s||"".concat(t,"__icon--refresher"),lWrap:(0,_classNames5.default)(h,(_defineProperty(g={},"".concat(h,"--hidden"),!d),_defineProperty(g,"".concat(h,"--visible"),d),_defineProperty(g,"".concat(h,"--end"),f),g)),lContent:"".concat(h,"__content"),loadingText:"".concat(h,"__text-loading")}}]},methods:{activate:function(){this.setData({style:defaultStyle,visible:!0})},deactivate:function(){this.activated&&(this.activated=!1),this.setData({style:defaultStyle,visible:!1,active:!1,refreshing:!1,tail:!1})},refreshing:function(){this.setData({style:"transition: transform .4s; transform: translate3d(0, 50px, 0) scale(1);",visible:!0,active:!0,refreshing:!0,loading:!1,noData:!1,newContentHeight:0,oldContentHeight:0,lVisible:!1})},tail:function(){this.setData({visible:!0,active:!0,refreshing:!0,tail:!0})},hide:function(){this.setData({lVisible:!1})},translate:function(t){var e="transition-duration: 0s; transform: translate3d(0, ".concat(t,"px, 0) scale(1);"),i=t<this.data.distance?"visible":"active";this.setData(_defineProperty({style:e},i,!0))},isRefreshing:function(){return this.data.refreshing},isLoading:function(){return this.data.loading},getTouchPoints:function(t,e){var i=1<arguments.length&&void 0!==e?e:0,n=t.touches[i]||t.changedTouches[i];return{x:n.pageX,y:n.pageY}},getSwipeDirection:function(t,e,i,n){return Math.abs(t-e)>=Math.abs(i-n)?0<t-e?"Left":"Right":0<i-n?"Up":"Down"},requestAnimationFrame:function(t){var e=this,i=(new Date).getTime(),n=Math.max(0,16-(i-this.lastTime)),a=setTimeout(function(){t.bind(e)(i+n)},n);return this.lastTime=i+n,a},cancelAnimationFrame:function(t){clearTimeout(t)},finishPullToRefresh:function(){var t=this;setTimeout(function(){t.requestAnimationFrame(t.tail),setTimeout(function(){return t.deactivate()},200)},200)},finishLoadmore:function(t){var e=this;!0===t?setTimeout(function(){e.setData({noData:!0,loading:!1})},200):setTimeout(function(){e.setData({noData:!1,loading:
|