startVal,
endVal,
};
},
value() {
let n = useTransition(this.source).value;
n = useTransition(source, {
disabled,
duration: duration,
onFinished: () => {
return this.$emit(“onFinished”);
},
onStarted: () => {
return this.$emit(“onStarted”);
},
…(useEasing ? { transition: TransitionPresets[transition].name } : {}),
}).value;
let num = this.formatNumber(n);
return num;
},
},
watch: {
getVal: {
deep: true,
immediate: true,
handler(newVal, oldVal) {
console.log(newVal);
if (this.autoplay) {
this.start();
}
},
},
// “endVal,startVal”: {
// deep: true,
// immediate: true,
// handler(newVal, oldVal) {
// console.log(newVal);
// ;
// if (this.autoplay) {
// this.start();
// }
// },
// },
startVal: {
deep: true,
immediate: true,
handler(newVal, oldVal) {
this.source = newVal;
},
},
},
mounted() {
this.autoplay && this.start();
},
methods: {
start() {
this.run();
this.source = this.endVal;
},
run() {
let { source, disabled, duration, useEasing, transition } = this;
let str1 = TransitionPresets[transition];
console.log(str1, useEasing);
this.outputValue = useTransition(source, {
disabled,
duration: duration,
onFinished: () => {
return this.$emit(“onFinished”);
},
onStarted: () => {
return this.$emit(“onStarted”);
},
…(useEasing ? { transition: TransitionPresets[transition].name } : {}),
}).value;
},
// 添加百分号 如果仅仅想给数字加百分号 使用这个就行了
formatNumber(num) {
if (!num && num !== 0) {
return “”;
}
// decimal 小数点 .
// decimals 几位小数 .xxx
// separator 分号 ,
const { decimals, decimal, separator, suffix, prefix } = this;
num = Number(num).toFixed(decimals);
num += “”;
const x = num.split(“.”);
let x1 = x[0];
const x2 = x.length > 1 ? decimal + x[1] : “”;
const rgx = /(\d+)(\d{3})/;
if (separator && !isNumber(separator)) {
while (rgx.test(x1)) {
x1 = x1.replace(rgx, “$1” + separator + “$2”);
}
}
let m = prefix + x1 + x2 + suffix;
return m;
},
},
};
src/utils/is.js
const toString = Object.prototype.toString;
export function is(val, type) {
return toString.call(val) === [object ${type}]
;
}
export function isDef(val) {
return typeof val !== “undefined”;
}
export function isUnDef(val) {
return !isDef(val);
}
export function isObject(val) {
return val !== null && is(val, “Object”);
}
export function isEmpty(val) {
if (isArray(val) || isString(val)) {
return val.length === 0;
}
if (val instanceof Map || val instanceof Set) {
return val.size === 0;
}
if (isObject(val)) {
return Object.keys(val).length === 0;
}
return false;
}
export function isDate(val) {
return is(val, “Date”);
}
export function isNull(val) {
return val === null;
}
export function isNullAndUnDef(val) {
return isUnDef(val) && isNull(val);
}
export function isNullOrUnDef(val) {
return isUnDef(val) || isNull(val);
}
export function isNumber(val) {
return is(val, “Number”);
}
export function isPromise(val) {
return (
is(val, “Promise”) &&
isObject(val) &&
isFunction(val.then) &&
isFunction(val.catch)
);
}
export function isString(val) {
return is(val, “String”);
}
export function isFunction(val) {
return typeof val === “function”;
}
export function isBoolean(val) {
return is(val, “Boolean”);
}
export function isRegExp(val) {
return is(val, “RegExp”);
}
export function isArray(val) {
return val && Array.isArray(val);
}
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)
![](https://i-blog.csdnimg.cn/blog_migrate/30c5ffd498cc6454e21b4a810e433f9e.jpeg)
最后的最后
面试题千万不要死记,一定要自己理解,用自己的方式表达出来,在这里预祝各位成功拿下自己心仪的offer。
需要完整面试题的朋友可以点击蓝色字体免费获取
频,并且会持续更新!**
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)
![](https://i-blog.csdnimg.cn/blog_migrate/30c5ffd498cc6454e21b4a810e433f9e.jpeg)
最后的最后
面试题千万不要死记,一定要自己理解,用自己的方式表达出来,在这里预祝各位成功拿下自己心仪的offer。
需要完整面试题的朋友可以点击蓝色字体免费获取
[外链图片转存中…(img-PB9ePJVU-1712231771089)]
[外链图片转存中…(img-yJa4am4E-1712231771089)]
[外链图片转存中…(img-ZHCJnbbv-1712231771089)]
[外链图片转存中…(img-l38yILyN-1712231771090)]