前端项目技术栈总结

简介: 本篇文章将对作者目前正在使用的前端技术栈做一个总结与梳理,如果你对基本的JS/HTML/CSS框架有所了解,但是又对目前流行的web框架,更直接说是能够就业的技术不甚了解或是感到迷茫,那么相信大家看了本文之后会够有所收获。

本篇文章将对作者目前正在使用的前端技术栈做一个总结与梳理,如果你对基本的JS/HTML/CSS框架有所了解,但是又对目前流行的web框架,更直接说是能够就业的技术不甚了解或是感到迷茫,那么相信大家看了本文之后会够有所收获。

img_c98e86139ea77478c172e5c1b33473f7.png
前端技术栈

概述

不要感觉需要的东西很多,一大堆不认识的东西密密麻麻的,其实只有加粗显示的两项技术(vueelement)是重点,而且这两者都是相互结合的,理解起来并不难,其他有很多也是会最基本的运用即可。正文内容将按照安装的顺序进行讲解,点击每一项的标题都可以直接跳转至其官网。另外一提,在接下来的阅读中不可避免的会接触到全英文的网站,所以请提前做好翻译工作,这里我强烈推荐Chrome浏览器(下载点这里),自带翻译功能的同时还拥有世界上最好的开发者调试工具,谁用谁知道。

在阅读本文时可以参考 - 项目实践源码

img_83b576425d46ca1b3438aca82f9eb2ad.gif
效果展示

基础

这一部分包括了这个前端框架最基本的结构,完成这一小节的安装与配置后,你将可以进行最基本的前端项目开发。

nodejs - 一切的核心

简单来说,nodejs就是javascript的服务器版本,它轻量又高效,而且和js的语法几乎完全一样,如果你之前了解js的话,那么nodejs的学习成本就几乎为零,nodejs还包含了一个插件管理器叫做npm,用于安装和使用数量庞大的第三方包而完全不用关心是怎么下载的。更棒的是,当你安装完nodejs之后就完全不用理会它了,让它默默的在底层发光发热吧,至于怎么安装,看下一节。

nvm - 版本管理

nvm(Node Version Manager )是nodejs的版本控制器。在实际项目的开发中,我们经常会遇到项目所需的nodejs版本和我们现在正在用的版本不一样的情况,nvm就很好的解决了这个问题,nvm可以快速安装/切换/删除nodejs的不同版本。

安装与使用

下载地址 - windows 安装完成后在cmd输入nvm version后弹出版本号即为安装成功

nvm version
# -> 1.1.7

nvm为纯命令行操作 在任何位置的cmd中都可运行nvm,更多命令请键入nvm -h查看

主要命令 介绍
nvm install node版本号 安装nodejs和对应版本的npm,安装完成后会自动配置path
nvm list [available] 可以查看已经安装的node,加available查看所有的node版本
nvm use node版本号 使用对应版本的nodejs
nvm uninstall 已安装的node版本号 删除对应版本的nodejs

yarn - 更好的包管理

什么?我们不是有npm了么?为什么还要用这个我听都没听说过的yarn?答案是因为它更好用,yarn的使用更加更加简单、安全可靠、提示也更加友好。而且没错,它也是纯命令行操作。

安装与使用

访问官网下载安装之后在命令行键入yarn -v,显示版本号即为安装成功。

yarn -v
# -> 1.9.4

下列命令请在项目工程的目录中使用,更多命令请键入yarn -h查看

主要命令 介绍
yarn 安装当前目录下已经存在的依赖
yarn add 包名 为当前目录下的项目安装指定包
yarn global add 包名 全局安装包(多用于安装工具)
yarn remove 包名 删除指定包
yarn config set registry 'https://registry.npm.taobao.org' 切换为淘宝源,下载更快

编辑器及插件

好了,通过上面的安装你已经可以正常的在记事本里完成自己的项目了,什么?记事本?这可忍不了。于是,当当当当,世界第二强的编辑器闪亮登场。

VS Code - 好用的编辑器

vscode不用多说了,小到忽略不计的安装包(44M)、简洁的界面、完全免费、海量的插件、内建git、遁入智瞳的禅模式,完全开源,都让这个编辑器成为我们的首选。当然,初次之外你还有很多选择,webStorm、IDEA又或者是vim,这里完全取决于你。
下载地址

img_731ab7bd74d9a3ba31c458c3099724f1.png
官网截图

ESLint - 代码风格检查

ESLint是一个用于统一风格的代码检查器,它内置了许多的规则,比如最大嵌套不能超过五层,变量定义之后必须使用、switch 语句必须包含 default等,让每个人都可以写出统一风格的代码来,从而避免一些细小但致命的bug和增加可读性。

如果你使用的是VSCode的话,具体的安装与配置可以参见这里 使用 VSCode + ESLint 实践前端编码规范

架构

vue - 主体框架

vue可以说是整个体系的核心了,也是需要重点学习的地方。vue是一个前端框架,建立在nodejs的基础上,使用yarn来管理其数量庞大的组件,例如下文提到的element和v-chart。vue是一个组件化、数据驱动的框架,它可以让代码更易于维护,也可以让开发者更专注于内容的创作上,而不是在细枝末节上浪费时间,你可以通过阅读下方的文章来更加深入的了解vue。

img_bdfad56068c39cb19f9e32fee9168557.png
VUE.JS

pug - 更好的HTML

pug是一种模板语言,它比传统的html语法更简洁,写起来更加的舒服

  • 安装 在项目目录下命令行中键入yarn add pug即可安装
> yarn add pug
yarn add v1.9.4
info No lockfile found.
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...

success Saved lockfile.
success Saved 55 new dependencies.
info Direct dependencies
└─ pug@2.0.3
info All dependencies
├─ @types/babel-types@7.0.4
... 一大堆的依赖 ...
└─ yargs@3.10.0
Done in 19.06s.
  • 基本语法对比 更多对比参见这里
pug html
a(href='baidu.com') 百度 <a href="baidu.com">百度</a>
#main pug天下第一 <div id="main">pug天下第一</div>
.main pug天下第一 <div class="main">pug天下第一</div>
  • vue引用 将组件template块的lang属性设置为pug即可
<template lang="pug">
  #container
    a(href='https://pugjs.org/') pug官网
</template>

stylus

stylus是一种预编译样式语言,用于替代css,stylus相对css同样更加简洁、更加易于阅读和维护

  • 安装 在项目目录下命令行中键入yarn add stylus即可安装
> yarn add stylus
yarn add v1.9.4
warning package.json: No license field
warning No license field
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
success Saved lockfile.
success Saved 18 new dependencies.
info Direct dependencies
└─ stylus@0.54.5
info All dependencies
├─ amdefine@1.0.1
... 一堆依赖 ...
└─ stylus@0.54.5
warning No license field
Done in 4.31s.
  • 基本语法对比 更多对比参见这里

stylus 省略花括号、分号、冒号,缩进控制结构、使用函数复用

border-radius(arg)
  -webkit-border-radius arg
  -moz-border-radius arg
  border-radius arg

body
  font 12px Helvetica, Arial, sans-serif

a.button
  border-radius(5px)

css 臃肿、繁琐,重复性劳动

body {
  font: 12px Helvetica, Arial, sans-serif;
}
a.button {
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}
  • 在vue中使用 将组件style块的lang属性设置为stylus即可
<style lang="stylus" scoped>
...
</style>

细节

当你熟悉了上一小节的内容后你就可以完成健壮可靠的项目了,接下来的内容可以让你的开发更加快速方便。

elementUI - UI组件库

elementUI是基于vue框架的一套UI组件库,有点类似与bootStrap,由饿了么开发。可以让你轻轻松松就可以搭建出漂亮的页面来。它的组件使用也是需要重点学习一下,详细的组件介绍参见这里

  • 安装 在项目目录下命令行中键入yarn add element-ui即可安装
> yarn add element-ui
yarn add v1.9.4
warning package.json: No license field
warning No license field
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
warning " > element-ui@2.4.10" has unmet peer dependency "vue@^2.5.2".
[4/4] Building fresh packages...
success Saved lockfile.
success Saved 7 new dependencies.
info Direct dependencies
└─ element-ui@2.4.10
info All dependencies
├─ async-validator@1.8.5
... 一小点依赖 ...
└─ throttle-debounce@1.1.0
warning No license field
Done in 12.95s.
  • 在vue中使用elementUI 在main.js中添加如下代码即可
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';

Vue.use(ElementUI);

v-chart - 简单好看的图表

v-chart是基于echart封装的一套vue图表组件,echart是一套前端非常流行非常强大的图表显示组件,但是强大的同时也带来了繁琐的配置项,v-chart将复杂的配置进行了简化以更方便使用。

具体的使用可以参见我的这篇文章 使用V-chart时踩过的一些坑

leaflet - 轻量级的地图

leaflet是一个轻量级的开源地图组件,比高德百度更加的易于使用。

具的使用可以参见我的这篇文章 leaflet地图介绍

目录
相关文章
|
8天前
|
前端开发 JavaScript 定位技术
一、前端高德地图注册、项目中引入、渲染标记(Marker)and覆盖物(Circle)
文章介绍了如何在前端项目中注册并使用高德地图API,包括注册高德开放平台账号、引入高德地图到项目、以及如何在地图上渲染标记(Marker)和覆盖物(Circle)。
24 1
|
2月前
|
前端开发 Java 编译器
【前端学java】java基础练习缺少项目?看这篇文章就够了!(完结)
【8月更文挑战第11天】java基础练习缺少项目?看这篇文章就够了!(完结)
34 0
|
2月前
|
JavaScript 前端开发 Java
SpringBoot + Vue 前端后分离项目精进版本
这篇文章详细介绍了一个基于SpringBoot + Vue的前后端分离项目的搭建过程,包括前端Vue项目的初始化、依赖安装、页面创建和路由配置,以及后端SpringBoot项目的依赖添加、配置文件修改、代码实现和跨域问题的解决,最后展示了项目运行效果。
SpringBoot + Vue 前端后分离项目精进版本
|
2月前
|
前端开发 JavaScript
在 Vue3 + ElementPlus 项目中使用 computed 实现前端静态分页
本文介绍了在Vue3 + ElementPlus项目中使用`computed`属性实现前端静态分页的方法,并提供了详细的示例代码和运行效果。
104 1
在 Vue3 + ElementPlus 项目中使用 computed 实现前端静态分页
|
2月前
|
前端开发 Java 编译器
【前端学java】java基础练习缺少项目?看这篇文章就够了!(17)
【8月更文挑战第11天】java基础练习缺少项目?看这篇文章就够了!
28 0
【前端学java】java基础练习缺少项目?看这篇文章就够了!(17)
|
2月前
|
开发者 C# C++
揭秘:如何轻松驾驭Uno Platform,用C#和XAML打造跨平台神器——一步步打造你的高性能WebAssembly应用!
【8月更文挑战第31天】Uno Platform 是一个跨平台应用程序框架,支持使用 C# 和 XAML 创建多平台应用,包括 Web。通过编译为 WebAssembly,Uno Platform 可实现在 Web 上运行高性能、接近原生体验的应用。本文介绍如何构建高效的 WebAssembly 应用:首先确保安装最新版本的 Visual Studio 或 VS Code 并配置 Uno Platform 开发环境;接着创建新的 Uno Platform 项目;然后通过安装工具链并使用 Uno WebAssembly CLI 编译应用;最后添加示例代码并测试应用。
55 0
|
2月前
|
前端开发 开发者 Apache
揭秘Apache Wicket项目结构:如何打造Web应用的钢铁长城,告别混乱代码!
【8月更文挑战第31天】Apache Wicket凭借其组件化设计深受Java Web开发者青睐。本文详细解析了Wicket项目结构,帮助你构建可维护的大型Web应用。通过示例展示了如何使用Maven管理依赖,并组织页面、组件及业务逻辑,确保代码清晰易懂。Wicket提供的页面继承、组件重用等功能进一步增强了项目的可维护性和扩展性。掌握这些技巧,能够显著提升开发效率,构建更稳定的Web应用。
76 0
|
2月前
|
前端开发 程序员 API
从后端到前端的无缝切换:一名C#程序员如何借助Blazor技术实现全栈开发的梦想——深入解析Blazor框架下的Web应用构建之旅,附带实战代码示例与项目配置技巧揭露
【8月更文挑战第31天】本文通过详细步骤和代码示例,介绍了如何利用 Blazor 构建全栈 Web 应用。从创建新的 Blazor WebAssembly 项目开始,逐步演示了前后端分离的服务架构设计,包括 REST API 的设置及 Blazor 组件的数据展示。通过整合前后端逻辑,C# 开发者能够在统一环境中实现高效且一致的全栈开发。Blazor 的引入不仅简化了 Web 应用开发流程,还为习惯于后端开发的程序员提供了进入前端世界的桥梁。
48 0
|
2月前
|
前端开发 JavaScript 编译器
【性能革命】Angular Ivy编译器:一场前端开发者的极速盛宴,揭秘应用瘦身与提速的黑科技,让你的Angular项目焕发新生的终极指南
【8月更文挑战第31天】Angular Ivy编译器是Angular团队推出的更新,旨在改善应用性能,减少构建时间和代码量。自Angular 9起,Ivy成为默认编译器。本文通过案例分析,介绍Ivy的工作原理及其优势。以一个复杂应用为例,展示了Ivy如何通过减少生成的JavaScript代码量、优化模板表达式解析等方式提升性能。通过创建示例项目并比较启用与未启用Ivy的构建结果,证明了Ivy在构建速度和文件大小上的显著改进,同时提高了运行时性能。这对于追求高性能和快速开发的应用至关重要。
25 0
|
2月前
|
数据采集 资源调度 JavaScript
Node.js 适合做高并发、I/O密集型项目、轻量级实时应用、前端构建工具、命令行工具以及网络爬虫和数据处理等项目
【8月更文挑战第4天】Node.js 适合做高并发、I/O密集型项目、轻量级实时应用、前端构建工具、命令行工具以及网络爬虫和数据处理等项目
38 5
下一篇
无影云桌面