This commit is contained in:
Ling53666
2025-08-18 09:11:51 +08:00
commit 02554225da
2516 changed files with 133155 additions and 0 deletions

View File

@ -0,0 +1 @@
.ant-page-infinite{position:relative;width:100%;box-sizing:border-box}.ant-page-infinite-content{width:100%}.ant-page-infinite-content::-webkit-scrollbar{display:none}.ant-page-infinite-wrap{position:absolute;bottom:1px;left:0;right:0;width:100%;height:3px;z-index:2;pointer-events:none}.ant-page-infinite-area{position:absolute;left:50%;width:26px;height:3px;overflow:hidden;border-radius:2px/2;transform:translateX(-50%);background-color:#f5f5f5}.ant-page-infinite-move{position:absolute;bottom:0;left:0;width:50%;height:100%;transition:all .1s linear;border-radius:2px/2;background-color:#1677ff}

View File

@ -0,0 +1,28 @@
<import-sjs
from="./index.sjs"
name="sjs"
></import-sjs>
<view
class="ant-page-infinite {{className || ''}}"
style="{{style || ''}}"
>
<scroll-view
scrollX="{{true}}"
class="ant-page-infinite-content"
id="ant-pageInfinite{{$id ? '-' + $id : ''}}"
onScroll="{{supportSjs ? sjs.changeScollDistance : 'onScroll'}}"
>
<slot></slot>
</scroll-view>
<view class="ant-page-infinite-wrap">
<view
class="ant-page-infinite-area"
style="{{fillColor ? 'background-color:' + fillColor : ''}}"
>
<view
class="ant-page-infinite-move"
style="{{frontColor ? 'background-color:' + frontColor : ''}}; transform: translateX({{pageDeg}}%);"
></view>
</view>
</view>
</view>

View File

@ -0,0 +1 @@
export {};

View File

@ -0,0 +1,55 @@
import { __awaiter, __generator } from "tslib";
import { Component } from '../_util/simply';
import { PaginationDefaultProps } from './props';
import { getInstanceBoundingClientRect } from '../_util/jsapi/get-instance-bounding-client-rect';
Component(PaginationDefaultProps, {
clacWidth: function () {
return __awaiter(this, void 0, void 0, function () {
var rect;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, getInstanceBoundingClientRect(this, "#ant-pageInfinite-".concat(this.$id ? "-".concat(this.$id) : ''))];
case 1:
rect = _a.sent();
if (rect) {
return [2 /*return*/, rect.width];
}
return [2 /*return*/, 0];
}
});
});
},
onScroll: function (e) {
return __awaiter(this, void 0, void 0, function () {
var _a, scrollLeft, scrollWidth, viewWidth;
return __generator(this, function (_b) {
switch (_b.label) {
case 0:
_a = e.detail, scrollLeft = _a.scrollLeft, scrollWidth = _a.scrollWidth;
return [4 /*yield*/, this.clacWidth()];
case 1:
viewWidth = _b.sent();
if (viewWidth) {
this.setData({
pageDeg: Math.ceil((scrollLeft / (scrollWidth - viewWidth)) * 100),
});
}
return [2 /*return*/];
}
});
});
},
}, {
pageDeg: 0,
supportSjs: true,
}, undefined, {
wrapWidth: 0,
onInit: function () {
var supportSjs;
if (typeof my === 'undefined') {
supportSjs = true;
}
supportSjs = my.canIUse('sjs.event');
this.setData({ supportSjs: supportSjs });
},
});

View File

@ -0,0 +1,3 @@
{
"component": true
}

View File

@ -0,0 +1,11 @@
function changeScollDistance(event, ownerComponent) {
var scrollLeft = event.detail.scrollLeft;
var scrollWidth = event.detail.scrollWidth;
var viewWidth = ownerComponent.selectComponent('.ant-page-infinite-content').getBoundingClientRect().width;
var moveDom = ownerComponent.selectComponent('.ant-page-infinite-move');
var pageDeg = Math.ceil(scrollLeft / (scrollWidth - viewWidth) * 100);
moveDom.setStyle("transform: translateX(".concat(pageDeg, "%);"));
}
export default {
changeScollDistance: changeScollDistance
};

View File

@ -0,0 +1,14 @@
import { IBaseProps } from '../_util/base';
export interface IPaginationProps extends IBaseProps {
/**
* @description 分页符背景色
* @default '#ddd'
*/
fillColor: string;
/**
* @description 分页符颜色
* @default '#1677ff'
*/
frontColor: string;
}
export declare const PaginationDefaultProps: Partial<IPaginationProps>;

View File

@ -0,0 +1,4 @@
export var PaginationDefaultProps = {
fillColor: '',
frontColor: '',
};