当前位置: 首页 > news >正文

前端进阶之路-从传统前端到VUE-JS(第一期-VUE-JS环境配置)(Node-JS环境配置)(Node-JS/npm换源)

经过前面的传统前端开发学习后,我们接下来进行前端的VUE-JS框架学习(写这篇文章的时候VUE-JS最新版是VUE3,所以默认为VUE3即可)

首先,我们要配置Node-JS环境,虽然我们还不学习Node-JS但是Node-JS可以快速配置我们的VUE-JS框架,所以本期内容主要以Node-JS环境配置为主

Node-JS下载

官网:https://nodejs.cn/en/download

        https://nodejs.cn/download/

给大家推荐一个适合新手配置的方法

下载zip文件

或者

然后解压(这个应该都会,因为是zip文件直接双击进去然后托在桌面上就行)

环境配置

接下来配置环境(我的电脑是windows10,可能会和你们的不一样)

打开"设置">"系统">"系统信息">"高级系统设置"

接下来配置环境

(拓展一下用户变量和系统变量的区别:用户变量是针对特定用户定义的,只在该用户的会话或程序中有效;系统变量是全局性的,对整个系统或所有用户都有效。)

因为我电脑的语言比较多,担心污染环境就在用户变量里面改了

选中"path"后直接"编辑",然后点"新建"把Node-js文件路径加进去就行

(我以前配的,所以和你们看见的版本应该不一样)

测试

可以看到出现版本号了,说明没问题

换源

接下来换源(就是从一个官方的代码仓库切换到镜像仓库,目的是为了加快下载速度、提高开发效率或解决网络访问问题,类似于之前配置过的皮卡丘靶场docker版本)

给nodejs换源实际上是给npm包(一个下载开源框架的库)换源,所以只看npm就行

我们先来看现在的源:输入

npm config get registry

(默认应该是官方源,也能用,但是可能会有点慢)

接下来我们换其它源:

npm config set registry https://registry.npm.taobao.org

或者换个自己喜欢的源

淘宝源:
https://registry.npm.taobao.org
阿里云源:
https://npm.aliyun.com
腾讯源:
https://mirrors.cloud.tencent.com/npm/
npm 镜像源:
https://registry.npmmirror.com

完成

接下来就是配置一个VUE-JS框架了

介绍下VUE-JS各个构建方式的优缺点

Vue CLI(适合企业级项目):稳定全面但是体积大

安装:npm install -g @vue/cli
构建:vue create <自定义名称>

Vite-vue(轻量级项目)速度爆炸,体积小,但是对应的就是不成熟,复杂项目困难

构建:npm create vite@latest <自定义名称> -- --template vue

定制化(高手专用)自定义但是对于新手很难

npm init -y
npm install vue

我们在接下来的内容里以Vue CLI为主内容,因为市面上大部分都是用的这个,而且比较全面,方便后期理解一些开源项目

至于细节的配置:

介绍

1. Babel
含义:Babel 是一个 JavaScript 编译器,主要用于将现代 JavaScript(ES6+)代码转换为向后兼容的 JavaScript 版本(如 ES5),以确保代码能够在旧版本的浏览器中运行。
是否需要:如果你的项目需要支持旧版本浏览器(如 IE11),或者你使用了 ES6+ 的新特性(如 
async/await、
class 等),那么 Babel 是必要的。
2. TypeScript
含义:TypeScript 是一种静态类型语言,它是 JavaScript 的超集,添加了类型系统、接口、类等特性,能够帮助开发者更好地管理大型项目,减少错误。
是否需要:如果你希望在开发过程中获得更好的代码提示、类型检查和重构支持,或者你的团队更倾向于使用类型系统,那么可以选择 TypeScript。
3. Progressive Web App (PWA) Support
含义:PWA 是一种通过渐进式增强技术构建的 Web 应用,它可以通过缓存、离线支持、推送通知等功能,提供类似原生应用的用户体验。
是否需要:如果你希望你的应用能够在离线环境下使用,或者需要推送通知等功能,那么可以启用 PWA 支持。
4. Router
含义:Vue Router 是 Vue.js 的官方路由管理器,用于实现单页面应用(SPA)中的页面导航和路由管理。
是否需要:如果你的项目是一个多页面的单页面应用(SPA),那么需要使用 Vue Router 来管理页面跳转。
5. Vuex
含义:Vuex 是 Vue.js 的状态管理库,用于集中管理应用的状态,特别是在大型项目中,Vuex 可以帮助开发者更好地管理全局状态。
是否需要:如果你的项目中存在多个组件需要共享状态(如用户登录状态、购物车数据等),那么可以使用 Vuex。
6. CSS Pre-processors
含义:CSS 预处理器(如 Sass、Less、Stylus)是用于扩展 CSS 功能的工具,它们提供了变量、嵌套规则、混合等功能,使 CSS 更易于编写和维护。
是否需要:如果你希望使用更强大的 CSS 编写方式,或者你的团队对 CSS 预处理器有偏好,那么可以选择启用。
7. Linter / Formatter
含义:Linter 是用于检查代码质量问题的工具(如 ESLint),Formatter 是用于格式化代码的工具(如 Prettier)。它们可以帮助团队保持一致的代码风格,减少代码错误。
是否需要:强烈建议启用!这有助于提高代码质量,减少团队成员之间的代码风格冲突。
8. Unit Testing
含义:单元测试是针对代码中的最小单元(如函数、组件)进行测试,以确保它们的正确性。Vue.js 的单元测试通常使用 Jest 或 Mocha 等框架。
是否需要:如果你希望提高代码的可靠性和可维护性,或者你的项目需要持续集成(CI),那么单元测试是很有帮助的。
9. E2E Testing
含义:端到端测试(E2E Testing)是模拟用户在浏览器中的真实操作,测试整个应用的流程是否正常。常用的工具是 Cypress 或 Playwright。
是否需要:如果你希望确保用户在实际使用过程中不会遇到问题,或者你的项目对质量要求较高,那么可以启用 E2E 测试。

本系列内容使用


Please pick a preset: Manually select features
Check the features needed for your project: Babel, TS, Router, Linter
Choose a version of Vue.js that you want to start the project with 3.x
Use class-style component syntax? No
Use Babel alongside TypeScript (required for modern mode, auto-detected polyfills, transpiling JSX)? Yes
Use history mode for router? (Requires proper server setup for index fallback in production) Yes
Pick a linter / formatter config: Prettier
Pick additional lint features: Lint on save
Where do you prefer placing config for Babel, ESLint, etc.? In dedicated config files
Save this as a preset for future projects? No

至此,配置完成,大家可以先观察一下VUE和传统前端的区别,下一篇来讲解VUE框架的内容

雄关漫道真如铁,而今迈步从头越

http://www.lqws.cn/news/553141.html

相关文章:

  • Python 中 `while` 循环在游戏开发中的具体应用:实战案例解析
  • 软测八股--计算机网络
  • 告别固定密钥!在单一账户下用 Cognito 实现 AWS CLI 的 MFA 单点登录
  • C++包管理工具:conan2持续集成 (CI) 教程
  • 给自己网站增加一个免费的AI助手,纯HTML
  • 广外计算机网络期末复习
  • (LeetCode 每日一题) 2099. 找到和最大的长度为 K 的子序列 (排序)
  • VScode使用usb转网口远程开发rk3588
  • 展开说说:Android之ContentProvider源码浅析
  • 【安卓Sensor框架-1】SensorService 的启动流程
  • PMO 与IPD、CMMI、项目管理什么区别和联系
  • Yolo11模型训练速通
  • 【C语言】超市管理系统丨完整源码与实现解析
  • python的医疗废弃物收运管理系统
  • 设计模式之桥接模式(Java)-JDBC也实现了桥接模式
  • 分布式电源采集控制装置:山东光伏电站的“智能中枢”
  • RK3568-drm框架
  • NLP中的同义词替换及我踩的坑
  • Element Plus el-button实例类型详解
  • 短波监测设备和超短波监测设备的区别
  • 磁悬浮支撑:从实验室到工业应用的挑战与机遇
  • 数据结构:最小生成树—Prim(普里姆)与Kruskal(克鲁斯卡尔)算法
  • UNION 和 UNION ALL
  • 回调函数、作用域与闭包:从图片预览案例深入理解
  • 文件管理与Java操作全解析
  • 编译安装detectron2
  • 常用工具库
  • 北大肖臻《区块链技术与应用》学习笔记
  • 智能库室管控系统DW-S306|全国已经规模化应用
  • 微服务项目,启动某服务,编译后就没反应