从零做前端项目01:我学习的前端技术栈

初遇前端

初次接触前端还是2016年,那一年暑假心血来潮,在网易云课堂上学着前端三剑客(html、js、css)。18年毕业,把用各色水笔手写的花花绿绿笔记寄回家里,投身奔赴后端与大数据开发的征程。

遥记18年的毕业设计,是在网上找了个模板,用bootstrap和jQuery改造了几个前台展示页面,这也是唯一曾经"上过台面"的前端项目。

纸上得来终觉浅

工作之后学完大数据开始学习vue,看完视频教程、做完笔记,自我感觉笑问天下谁敌手,什么都会了。直到有一天,真的想要做一个前端项目的时候,想改一下从网上找的模板,才发现无从下手。

还记得在javaweb接触项目的时候,前端和Java后端代码放在了一个项目里。后来再学前端,已经走上了前后端分离的道路。又开始学Node,Vue、Vue-Router,笔记依旧记得满当。当真的去开发一个项目的时候,这些组件该怎么用,用在什么地方都不知道。

有一天,在ElementUI的网站上,看到了BuildAdmin开源项目,于是开始打算从项目入手。先了解项目中的技术,然后通过官网深入学习。

在拆解还原BuildAdmin的过程中,虽然很多地方都是用了项目中的代码,但是我都是研究学习并了解其中含义之后才会使用。包括这块代码属于哪个模块,哪里引用了这些代码,实现原理是什么等等,我在文章中都有体现。

这是我从BuildAdmin学习前端中做过的笔记,包括项目中用到的技术栈、对各个模块实现的拆解,以及开发中遇到的问题等等,在走走停停的学习过程中,回头看有些许收获。

BuildAdmin

1. 项目文档

项目文档:wonderful-code.gitee.io

代码仓库地址:gitee.com/wonderful-c...

先看BuildAdmin的源代码和文档。同时在项目文档中,可以直接跳转到演示网站。

从gitee上的源代码看,整个项目分为前端和后端,前端用的Node和Vue的技术栈,后端使用的PHP吧你,后端打算用Java或者Node替换掉,这里只关注一下前端技术。

2. 前端技术选型

BuildAdmin基于Node,项目使用了vite构建工具,我用的是webpack。主要使用的技术如下,可以进入各自的官网直接学习。

1. Vue3

好久之前学的是Vue2,现在Vue3提供了很多简便的语法糖,例如setup等,同时提供了组合式API的开发模式,省去了很多代码。

2. Element Plus

UI框架使用Element Plus,布局、菜单、icons等都囊括其中,官方文档提供了完整样例代码。

3. Vue-router

路由使用Vue-router,实现菜单的动态路由等功能

4. pinia

BuildAdmin用pinia来实现状态管理,本来打算使用VueX,后来换成Pinia,其实大同小异。

5. TypeScript

JS语言,而且ES语法要用babel编译器。

6. Axios

向后台发起异步请求,例如菜单列表、权限等数据。

7. SCSS

CSS预处理器,这里选择Sass,我刚开始使用的Less,后来又学的Sass,与原生css不同的是,可以定义变量、逻辑运算等。

结语

作为前端之路的开篇,主要讲了自己学习前端的一些经历,以及后面的学习思路和技术选型。其中涉及的前端技术,在项目开始之前可以去官网,了解一下基本功能,后面可以跟着项目的实践来深入学习。

下一篇开始讲BuildAdmin的项目架构以及代码开发。

相关推荐
meng半颗糖44 分钟前
vue3+tpescript 点击按钮跳转新页面直接通过链接预览word
前端·vue.js·word
击败不可能1 小时前
vue做任务工具方法的实现
前端·javascript·vue.js
觉醒大王1 小时前
医学好投的普刊分享
前端·论文阅读·深度学习·学习·自然语言处理·学习方法
小二·1 小时前
Python Web 开发进阶实战:AI 编排引擎 —— 在 Flask + Vue 中构建低代码机器学习工作流平台
前端·人工智能·python
【赫兹威客】浩哥1 小时前
【赫兹威客】框架模板-前端bat脚本部署教程
前端·vue.js
sww_10261 小时前
智能问数系统(二):数据分析师Python
java·前端·python
一 乐2 小时前
学生宿舍管理|基于springboot + vue学生宿舍管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·助农电商系统
一人の梅雨2 小时前
义乌购商品详情接口进阶实战:批发场景下的精准解析与高可用架构
java·服务器·前端
bin91532 小时前
(文后附完整代码)html+css+javascript 弓箭射击游戏项目分析
前端·javascript·css·游戏·html·前端开发
翱翔的苍鹰2 小时前
完整的“RNN + jieba 中文情感分析”项目的Gradio Web 演示的简单项目
前端·人工智能·rnn