原生 js 工具包
dom 文件
-
classListAdd
SVG 元素添加类名function classListAdd(dom: SVGElement, className: string): void;
-
findParentNode
找到子节点对应的父节点并返回function findParentNode(currentTarget: HTMLElement | null, parentClassName: string): HTMLElement | null;
-
引入
import { classListAdd } from '@dsh-prose/utils/lib/dom';
slideTo 文件
-
easeInOutCubic
ease-in-out 贝塞尔曲线function easeInOutCubic(t: number, b: number, c: number, d: number): number;
-
slideTo
ease-in-out 动画type SetPrevent = () => void; // 停止继续执行回调 interface SlideToProps { movingTime?: number; // 移动时间 startPos: number; // 开始位置 endPos: number; // 结束位置 chunkCallback?: (nextScrollTop: number) => void; // 单次移动的回调 completeCallback?: (endPos: number) => void; // 移动完成的回调 } function slideTo(props: SlideToProps): SetPrevent;
-
引入
import { slideTo } from '@dsh-prose/utils/lib/slideTo';
utils 文件
-
r2a
弧度转角度function r2a(r: number): number;
-
inclinedAngle
计算两点形成的直线与水平线的夹角interface Doc { // 点的信息 x: number y: number } function inclinedAngle(start: Doc, end: Doc): number;
-
exclude
排除对象中指定的值function exclude(object: AnyObject, excludeKey: string[] | string): AnyObject;
-
preventDefault
阻止默认事件function preventDefault(event: TouchEvent | MouseEvent): boolean;
-
getLastClientPos
获取鼠标/当前元素最后一根手指的位置function getLastClientPos(event: TouchEvent | MouseEvent): { clientX: number, clientY: number };
-
getLastEventId
获取鼠标/当前元素最后一根手指的 idfunction getLastEventId(event: TouchEvent | MouseEvent): number;
-
withinRange
将数字控制在范围内,超过取最大值,小于取最小值,如果传入的最大值小于最小值则不作计算,直接返回原始值function withinRange(number: number, min: number, max: number): number;
-
getFractionalPart
拿出指定位数的小数function getFractionalPart(number: number, decimals?: number): string;
-
getBrowserVersion
浏览器版本function getBrowserVersion(): 'IE' | null;
-
isPC
是否为 PC 端function isPC(): boolean;
-
引入
import { r2a } from '@dsh-prose/utils/lib/utils';