前端小白成长记:适合练手的开源项目推荐

我们做代码开发,从小白到大佬是一个成长的过程。而这个过程,需要练手,动手,思考,结合思考再去动手,将动手实战,最终成长为大佬。

目录

[1 小白的拦路虎](#1 小白的拦路虎)

[2 开源项目推荐](#2 开源项目推荐)

[2.1 你可以学习里面的公共方法代码](#2.1 你可以学习里面的公共方法代码)

[2.2 你可以使用里面的公共方法](#2.2 你可以使用里面的公共方法)

[2.3 你可以主动承担团队的公共开发者](#2.3 你可以主动承担团队的公共开发者)

[2.4 你还可以提升git工具功底](#2.4 你还可以提升git工具功底)

[2.5 你可以自造场景](#2.5 你可以自造场景)

[2.6 用于求职](#2.6 用于求职)

[3 最后](#3 最后)


1 小白的拦路虎

作为前端小白的我,曾经有这样的拦路虎,你是否也曾有过呢?

A 公司接触的项目简单,自己接触不到丰富而复杂的内容;

B 公司有核心成员写核心代码,而自己只能做边角料;

C 跟大佬学习代码,学着学着就跟不上;

D 很多大佬热心收徒,但他们收费;

E 自己有闲余时间,但总是想摸鱼玩游戏,不想学习,学不下去;

F 项目重复度高,公司业务固定,写来写去就是那些代码,毫无进展与挑战;

G 没有新项目,缺乏项目经验,无法将知识转化为实战技能;

H 技术栈变动快,学完这个出那个,学完这个版本出那个版本;

I 自己开发习惯了,缺少大团队的代码协作过程。

2 开源项目推荐

推荐给大家。对,你没有看错,是的,你没有听错。这个项目就是:js-tool-big-box前端JS工具库

2.1 你可以学习里面的公共方法代码

对,没错。你把代码库git clone下来以后,你就可以看到里面的每个方法是怎么写的,如果你对JS接触不深,那么这将会是一个非常好的入门代码库,里面有各种各样的公共方法,可以帮助你前端基本功的提升。

git clone GitHub - jsToolBigBox/js-tool-big-box: If you use this js Library, you will happy!

2.2 你可以使用里面的公共方法

当你需要做一个判断是否手机端浏览器的时候,你可以直接使用里面的这个方法,拷贝到自己的项目里面去

javascript 复制代码
isMobileBrowser: function() {
        if (
            window.navigator.userAgent.match(
            /(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i,
        )
        ) {
            return true; // 移动端
        } else {
            return false; // PC端
        }
    },

当你需要判断当前元素是否在可视范围内的时候,你可以直接使用这里面的方法,拷贝到自己的项目里面去。

javascript 复制代码
isElementInViewport: function(element) {
        const eleDom = document.querySelector(element);
        const rect = eleDom.getBoundingClientRect();
        return (
            rect.top >= 0 &&
            rect.left >= 0 &&
            rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&
            rect.right <= (window.innerWidth || document.documentElement.clientWidth)
        );
    },

2.3 你可以主动承担团队的公共开发者

当有个新项目需要开发的时候,你可以主动和组长说,我想负责团队中公共方法部分的开发。那个时候,你就可以直接使用这里面的方法,这个库的方法这么全,一定可以帮助你成为团队的核心成员

当团队需要判断数据的详细类型的时候,你可以直接从这里面拿代码

javascript 复制代码
getDataType: function(value) {
        return Object.prototype.toString.call(value);
    },

当团队需要存储cookie的时候,你可以直接从这里面拿代码

javascript 复制代码
 setCookie(key, value, expiresTime, domain, path) {
        let date = new Date();
        let newExpiresTime = '';
        if (expiresTime) {
            date.setTime(date.getTime() + expiresTime);
            newExpiresTime = ` expires=${date.toGMTString()};`;
        }
        domain = domain ? ` domain=${domain};` : '';
        path = path ? ` path=${path};` : '';
        const newCookie = `${key}=${value};${newExpiresTime}${domain}${path}`;
        document.cookie = newCookie;
    },

2.4 你还可以提升git工具功底

你还可以fock一下自己的库,让朋友们和你一起改动里面的相同的文件,你如果总是自己开发,团队人员少。你可以故意让大家产生冲突,然后故意去解决各种各样的冲突,以提升自己的git工具的功底。

2.5 你可以自造场景

这个库的公共方法齐全,而且不同以往的是,这个库的开发者是我们中国人。你可以和作者深入交流,可以通过方法,自己去创造场景,自己去创造独特的业务。不是老觉得自己开发的场景少嘛,我们可以帮你思考,帮你去想,慢慢的,你自己不就开发的多了嘛。

2.6 用于求职

当你需要求职的时候,你一定非常需要有一个自己拿得出手的项目。那么这个时候,你可以和作者交流,让你成为团队开发者。那个时候,这就是你的项目,你就是团队成员,有哪个团队不想要一个有思想,有实干的孩子呢。

3 最后

不要说什么环境不好,不要说什么公司业务量小,不要说什么自己遇到的场景少,不要说什么自己没呆过大团队,不要说什么自己忙,不要说什么自己懒。学起来,让10年后的自己感谢曾经的自己

相关推荐
宁波阿成4 分钟前
基于jeecgboot-vue3的Flowable流程-集成仿钉钉流程(一)图标svgicon的使用
前端·vue3·flowable·jeecgboot
前端程序猿i5 分钟前
主流 Canvas 库对比:Fabric.js、Konva.js 和 Pixi.js
运维·javascript·fabric
胜天半子祁厅9 分钟前
Linux操作系统学习:day08
linux·运维·学习
Java追光着1 小时前
谷粒商城学习笔记-05-项目微服务划分图
笔记·学习·微服务·谷粒商城
GISer_Jing1 小时前
Node.js学习路线
前端·javascript·node.js
Wang's Blog2 小时前
Webpack: 持久化缓存大幅提升构建性能
前端·缓存·webpack
程序员储物箱2 小时前
Vue报错:Module not found: Error: Can‘t resolve ‘less-loader‘ in ‘文件地址‘
前端·vue
乐吾乐科技2 小时前
【国产开源可视化引擎Meta2d.js】锚点
前端·编辑器·web·数据可视化·大屏端
Her...3 小时前
electron教程(一)创建项目
前端·javascript·electron
logstach4 小时前
QML-Grid和OpacityMask
前端·qml