Vue安装过程的困惑解答——nodejs和vue关系、vue的项目结构

news2024/12/26 23:37:37

文章目录

    • 一、为什么在使用vue前要下载nodejs?
    • 二、为什么安装nodejs后就能使用NPM包管理工具?
    • 三、为什么是V8引擎并且使用C++实现?
    • 四、为什么会安装淘宝镜像?
    • 五、什么是webpack模板,为什么需要他?
    • 六、vue项目的目录解释
    • 七、package.json和package-lock.json对依赖包的版本控制

本文知识来源于《Vue.js+Node.js全站开发实战》,书籍下载地址:https://zlibrary-east.se/book/18202286/fed194(2023.8.31更新)

一、为什么在使用vue前要下载nodejs?

相信大家都看过下面的Vue安装教程,首先第一步都是安装nodejs,那么为什么要下载nodejs?https://blog.csdn.net/m0_57545353/article/details/124366678

——因为Node.js是JavaScript的运行时环境

Node.js是一个基于Google Chrome V8引擎设计实现的、跨平台兼容的、可以运行在服务器端的脚本开发语言。

例如,大多数读者耳熟能详的Angular、React和Vue.js这三大渐进式前端开发框架,均与Node.js有着密不可分的关联关系。

这里解释一下服务端:一般的JavaScript脚本语言需要在浏览器环境下才可以解释执行。而Node.js是服务器端的脚本语言,可以直接在后端解释执行。

Node.js组织架构如下:
在这里插入图片描述

二、为什么安装nodejs后就能使用NPM包管理工具?

Node.js发展初期的核心用户Isaac Z. Schlueter开发出奠定了Node.js如今地位的
重要工具——NPM包管理工具。

之后ConnectExpressSocket.io等库的出现吸引了一大批
爱好者加入到Node.js开发者的阵营中来。CoffeeScript的出现更是让不少
Ruby和Python开发者找到了学习的理由。其间一大波以Node.js作为运行环
境的CLI工具涌现,其中不乏用于加速前端开发的优秀工具,如Babel、 Less、Sass、UglifyJS、Browserify、Grunt、Gulp等。

随着ECMAScript 6的发展和最终定稿,Node.js之父RyanDahl退出Node.js的核心开发,转而做其他的研究项目。Ryan Dahl的接任者Isaac Schlueter负责将Node.js一直开发下去并进行不断完善。

三、为什么是V8引擎并且使用C++实现?

选择C++和V8,而不是Ruby或者其他的虚拟机。Node.js在设计上以单进程、单线程模式运行。事件驱动机制是Node.js通过内部单线程高效率地维护事件循环队
列来实现的
,没有多线程的资源占用和上下文切换。这意味着面对大规模的
HTTP请求,Node.js是凭借事件驱动来完成的。

例:
实时互动交互比较多的社交网站,像Twitter这样的公司,它必须接收tweets并将其写入数据库。实际上,每秒几乎有数千条tweet达到,数据库不可能及时处理高峰时段所需的写入数量。Node成为这个问题解决方案的重要一环。Node能处理数万条入站tweet。它能快速而又轻松地将它们写入一个内存排队机制(例如memcached),另一个单独进程可以从那里将它们写入数据库。Node能处理每个连接而不会阻塞通道,从而能够捕获尽可能多的tweets。

四、为什么会安装淘宝镜像?

国内的淘宝为Node.js搭建了国内的NPM(npmjs.org)镜像网站,可以用此代替官方版本,同步频率为每10分钟一次,以保证尽量与官方服务同步,方便国内的开发者下载各种开发包,这就是为什么需要配置Node.js淘宝镜像加速器

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

五、什么是webpack模板,为什么需要他?

Webpack模块打包器作为构建Node应用框架的工具以自动化方式构建Web前端应用,所谓“自动化”方式,其实就是通过一种或几种自动化工具来构建Web前端应用的开发框架,生成后的框架会包含大部分Web前端应用所需的基本类库、第三方插件和支撑配置文件,等等。可以说,这种全新的开发方式将Web前端应用开发提升到了一个全新的高度,并且符合将前后端分离开来进行独立设计的大趋势。

Web前端的自动化构建工具有很多种,其中著名的就是Webpack模块化打包器工具,其也是目前Web前端开发中流行的工具之一。Webpack的功能十分强大,设计了入口(entry)、输出(output)、加载器(loader)和插件(plugins这四个概念,以递归方式构建出一个应用程序主要资源的依赖关系图,并最终完成将JavaScript模块打包成一个或多个“包(bundle)”。

六、vue项目的目录解释

node_modules目录存放了通过npm命令安装的各种开发包,里面不仅仅是刚刚安装的webpack和webpack_cli开发包,还包括了整个Node生态系统必要的依赖项。
在这里插入图片描述

七、package.json和package-lock.json对依赖包的版本控制

package-lock.json文件是在NPM v5版本以后新增加的功能
在这里插入图片描述
但若用户真想升级到最新版本或某个指定版本,则必须在开发包名称后使用“@latest”或“@版本号”来执行指定版本号的升级

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/954070.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023年中国电商销售额将达2.2万亿美元领跑全球

根据Global Data的数据,中国将继续保持在全球电子商务格局中的主导地位。预计中国电子商务市场将增长9.9%,到2023年将增长22亿美元。 2018年至2022年间,中国的在线销售额复合年增长率为11.2%。电商销售额在2022年达到了2万亿美元。预计2023年…

Python 实践之Pandas 时间数据处理方法详解

概要 表格数据中常见的数据类型是数值型(包括整数、浮点数)和字符型,除了这两种数据,时间类型数据也是常见数据的重要组成部分,同时也是数据分析中极其重要的信息。无论是金融领域的股票交易数据,还是企业注…

恒运资本:a股总市值怎么看?

跟着经济开展和金融商场的壮大,投资者越来越重视股市的行情。而对于A股商场来说,总市值是一个非常重要的目标。那么,A股总市值怎么看?以下是本文的详细剖析。 一、A股总市值界说与核算方法 首要需要了解A股总市值的界说和核算方法…

深度了解BSP452芯片特性与应用|百能云芯

在现代科技领域,芯片是推动各种电子设备发展的核心。BSP452作为一款重要的芯片,具有广泛的应用领域和独特的特性,为多个领域的创新提供了支持。百能云芯将深入探讨BSP452芯片的特点、应用领域以及未来发展前景。 BSP452芯片是一款N沟道MOS场效…

详细对比超融合服务器硬件平滑升级方案:新建集群 VS 滚动升级

作者:深耕行业的金融团队 刘慧敏 在企业 IT 基础架构运维中,经常会遇到以下问题,从而需要对服务器硬件进行更换或升级: 服务器达到维护期限:通常在金融行业中,生产环境的服务器维护期限在 5 年左右&#…

【进程间通信】管道

(꒪ꇴ꒪ ),Hello我是祐言QAQ我的博客主页:C/C语言,数据结构,Linux基础,ARM开发板,网络编程等领域UP🌍快上🚘,一起学习,让我们成为一个强大的攻城狮&#xff0…

基于RabbitMQ的模拟消息队列需求文档

文章目录 一、项目背景二、需求分析1.核心概念2.BrokerServer核心组件3.核心API4.交换机类型5.持久化6.网络通信7.消息应答 三、消息队列模块划分 一、项目背景 什么是消息队列? 消息队列就是,基于阻塞队列,封装成一个独立的服务器程序&#…

springboot实战(一)之项目搭建

环境准备 ideajdk1.8springboot版本 2.7.15 项目开始 1.打开idea,点击new project 2.选择spring initillizr 核对:Server Url是否是:start.spring.io,然后根据自己依次设置项目名称、存储位置和包名,如下&#xff…

洛朗展式求留数方法计算超越函数f(x)=e^(cosx)的定积分

https://math.stackexchange.com/questions/2468863/what-is-the-integral-of-e-cos-x https://tieba.baidu.com/p/6881253594 例子 https://www.zhihu.com/question/441124046/answer/1697123609?utm_id0

《Kubernets证书篇:kubernetes1.24.17证书修改时间限制》

一、背景 Kubernetes 默认的证书有效期只有1年,因此需要每年手动更新一次节点上面的证书,特别麻烦而且更新过程中可能会出现问题,因此我们要对 Kubernetes 的 SSL 证书有效期进行修改,这里将证书的时间限制修改为100年。 环境信息如下: 操作系统内核版本K8S版本Ubuntu 20.…

百度的AI画图和讯飞的AI画图目前就这样了

今天接到百度的短信,说给我一个搜索AI的测试权限,心血来潮,让AI给我做个画,百度和讯飞来做个PK,结果都不敢恭维哈,双方都有待提高,加油!

代码解读 FCOS网络(基于mmrotate框架)

文章目录 1. rotated_fcos_head.py1.1 __init__函数1.2 forward_single 函数1.2.1 父类的forward_single 函数(anchor_free_head.py)1.2.2 _init_layers 函数 1.3 loss 函数1.3.1 get_targets 函数1.3.1.1 _get_target_single 函数 1.3.2 prior_generato…

vr城乡规划建筑设计元宇宙平台提高工作协同效率

随着科技的发展,元宇宙正逐渐渗透到各个行业领域中,特别是建筑设计,那么在建筑设计中,利用元宇宙平台有哪些特点及优势呢? 面对建筑行业日益突出的高消耗、高风险、高投入、低利润的问题,如何提升企业经营管理水平&am…

Python Pyecharts 制图

基本图表 - pyecharts - A Python Echarts Plotting Library built with love. from pyecharts import options as opts from pyecharts.charts import Pie from pyecharts.faker import Fakerc (Pie().add("",[list(z) for z in zip(["7室1厅", "5…

基于KNN算法的鸢尾花种类预测

K近邻法算法思想 K近邻法(K-Nearest Neighbor,KNN)是一种基本的分类和回归方法,是监督学习方法里的一种常用方法。K近邻算法用一句通俗的古语来说就是:“物以类聚,人以群分”。有人说看一个人什么样&#…

【Unity3D游戏魔坦之争】游戏结束流程封装实现【七】

👨‍💻个人主页:元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 收录于专栏:uni…

虹科分享 | 温度边缘效应对冻干成品含水量的影响(下)——优化和总结

上一篇文章中介绍到借助虹科Ellab的温度记录仪观察到由于冻干机壁面温度的影响,形成的边缘效应导致同一隔板的不同区域冻干饼块的干燥程度不均匀,含水量不同。 06 初次试验结果: 二次干燥中的产品温度显示: 放置在搁板中间的产品…

Linux内核源码分析 (A)常见内核面试题

Linux内核源码分析 (A)常见内核面试题 文章目录 Linux内核源码分析 (A)常见内核面试题调用 schedule() 进行进程切换的方式有几种CFS调度器vruntime的计算方式 网站收集面试题集合1 调用 schedule() 进行进程切换的方式有几种 系统调用 do_fork():copy_process()定…

供热管网安全运行监测,提升供热管网安全性能

城市管网是城市的“生命线”之一,是城市赖以生存和发展的基础,在城市基础设施高质量发展中发挥着重要作用。供热管网作为城市生命线中连接供热管线与热用户的桥梁,担负着向企业和居民用户直接供热的重要职责。随着城市热力需求的急剧增加&…

【SpringBoot】Swagger和knife4j的使用

文章目录 前言1.什么是Swagger和Knife4j2.Swagger和Knife4j怎么用2.1 引入依赖2.2 设置配置类2.3 启动验证 3.完结撒花 前言 springboot笔记集合: springboot笔记合计 没用的废话理论不多说,会用就完了 1.什么是Swagger和Knife4j Swagger是一种开源的API描述语言…