Win11搭建Angular开发环境

news2024/11/24 10:58:48

        作为一名后端程序员,无论当前的工作是否需要,会一点点前端无疑对自己是有帮助的。今天就来介绍一下如何搭建Angular的开发环境。我也是摸着石头过河,所以很多东西也不熟悉,先按照Angular官网的介绍来配置吧。

这个是Angular最新版本的安装说明,实际项目可能各个软件的版本较低,所以,不能完全按照这个来执行。同时,下面的安装顺序也不是严格按照上面的文档执行的。我将VSC的安装放在了最后,因为VSC的安装是独立的,调换顺序也不影响其他程序的安装。 

一. 安装Node.js     

        上面提到,首先需要安装Node.js,但我们应该安装哪个版本呢?如果已有项目,则查看Angular项目里面的package.json文件,找到:

"dependencies": {
    "@angular/animations": "^7.2.4",
    "@angular/common": "^7.2.4",
    "@angular/compiler": "^7.2.4",
    "@angular/core": "^7.2.4", // 项目依赖的angular版本
    ......
}

"@angular/core": "^7.2.4"表示大于等于7.2.4,小于8.0的版本都可以。这就是当前项目所需要的Node.js版本,更高或者更低的版本都会导致项目run不起来。如果是新项目或者自己搞个demo,则可以直接装最新的版本。

        但我不推荐直接从Node.js官网下载对应安装包进行安装的方式,因为有可能会遇到多个项目,每个项目使用的Node.js版本不一致的场景,这就会给安装Node.js带来麻烦。推荐安装nvm-windows工具,这是专门用来管理Node.js版本的工具,有了它,可以轻松应对前述的多项目不同版本的问题,下载地址点这里。nvm-windows提供了多种安装包,我这里就选择免安装版本了:

解压之后,注意以管理员权限执行install.cmd脚本,该脚本会自动进行相关的配置,比如环境变量等,非管理员权限可能会导致配置失败。如下图:

nvm配置好之后,打开命令行,输入nvm命令测试一下是否正常:

上图显示当前安装的nvm版本号是1.1.12,说明nvm配置没问题,接下来就可以安装Node.js了。通过Angular官网,查询Angular和Node.js的版本对应关系:

由上图可知,7.2.x版本的Angular对应的Node.js版本是^8.9.0||^10.9.0,我们这里就选择10.x的吧,俗话说,选新不选旧,是吧。在命令行中输入:nvm install v10

 额,根据错误信息,访问网络失败。根据经验,应该是本机网络原因,需要设置代理才能连通,如下设置代理的命令:

nvm proxy http://www.example.com:port

再试一下: 

好了,网络问题解决,上述命令虽没有指定详细的版本,但它会自动帮我们选择v10里面最新且最稳定的版本,图片显示它正在下载10.24.1版本。图片上也能看到它同时还将npm也一同下载了,npm版本是6.14.12,我们可以通过命令验证一下:

另外,注意前一图的最后一句,它提示我们如果要使用当前安装的Node.js,则需要再输入:nvm use 10.24.1才行。我们可以输入:nvm current命令查看下当前nvm使用的是什么版本:

 上图显示当前没有可用的版本,我们可以使用:nvm list 命令,查看当前已安装了哪些版本:

上图显示当前只安装了一个版本。我们按照前面的提示输入: nvm use 10.24.1,再查看一下:

显示当前版本为10.24.1了,说明设置成功了。至此,Node.js全部安装完成。

二. 安装Angular的CLI            

        根据第一幅图的描述,现在应该安装Angular的CLI了。如果对Angular版本无要求,则可以使用图一的命令:npm install -g @angular/cli

它默认会安装当前最新且最稳定的Angular版本。注意看上图的错误信息,应该又是网络问题,需要设置代理才能访问。如何对npm设置代理,这里也顺便讲一下:

npm config set proxy http://<proxy-server>:<port>
npm config set https-proxy http://<proxy-server>:<port>

设置完成之后,再试一下,这里我就选择下载项目所依赖的7.2.x的版本:

看最后added那一行,就表示安装成功了。至此,Angular的CLI也安装好了。 

 三. 安装Visual Studio Code

        Angular官网推荐使用这个宇宙最强的工具作为IDE,简称VSC,安装方法就不说了,没啥难度。无论是之前已经装过或者新装的,可以在VSC里使用命令行(个人觉得在VSC里面输入各种命令比单独开个命令行界面要方便一点),测试一下上面安装的各种工具,是否能正常执行。如果提示不能识别命令,则可能需要重启一下VSC软件。以下是我测试刚安装的Angular CLI的版本信息:

完美,命令执行正常 。接下来就可以run一下Angular项目了,看是否能正常run起来,输入命令:ng serve

额,从日志上看,提示内存不够,这个也算是经典问题了,有两种解决办法:

1. 直接在命令行中增加内存限制

        在命令行中运行 ng serve 时,增加 --max_old_space_size 参数,指定更大的内存分配。例如:

node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng serve

2. 在 package.json 中定义脚本

        在 package.json 中定义一个带有内存限制的脚本,以后只需运行 npm start,就能自动应用内存限制:

"scripts": {
  "start": "node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng serve"
   .....
   .....
   .....
}

然后执行:

npm start 

第二种方法可以简化命令,避免每次都手动设置内存限制。当然无论哪种方法,只要能run起来都是可以的。

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

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

相关文章

科技在日常生活中的革新

在科技日新月异的今天&#xff0c;‌我们的生活正经历着前所未有的变革。‌从智能家居到可穿戴设备&#xff0c;‌科技已经渗透到我们生活的每一个角落&#xff0c;‌深刻地影响着我们的生活方式和社会经济的发展。‌ 智能家居系统的出现&#xff0c;‌无疑是科技改变生活的典…

新手如何找到正确入行 Web3 路径?揭开职业启航新篇章

&#x1f3c4; Web3 新晋开发者如何找到心仪的工作&#xff1f;除了加强自身技术本领&#xff0c;开发创新优质项目以外&#xff0c;拓展社会人脉、接触行业资源同样重要。与此同时&#xff0c;风云变幻的 Web3 行业环境中&#xff0c;我们又该如何寻找优质潜力的项目生态实现深…

【本地网页控制远程开发板】使用Python的Paramiko库通过SSH连接开发板进行通信

最近想要在本地用flask框架创建网页&#xff0c;在网页端与远程开发板进行交互&#xff0c;里面有一项需求就是当我点击网页端的按钮时&#xff0c;开发板会执行相应的脚本文件进行预警。以下演示如何使用Python的Paramiko库来通过SSH连接开发板实现上述功能。 主要的代码思路如…

SSL/TLS协议信息泄露漏洞修复

概述&#xff1a;CVE-2016-2183 是一个涉及 SSL/TLS 协议信息泄露的漏洞&#xff0c;也被称为 "SWEET32" 攻击。该漏洞利用了某些对称加密算法&#xff08;如 3DES&#xff09;的弱点&#xff0c;攻击者可以通过捕获和分析大量的加密流量&#xff0c;可能会恢复明文数…

MySQL 配置免密码登陆(mysql_config_editor Configuration)

当使用mysql, mysqldump, mysqladmin等客户端连接MySQL数据库服务器时&#xff0c;需要提供用户凭证信息。你可以在每次连接时都输入连接信息&#xff08;用户名/密码/地址/端口等&#xff09;或者将用户信息保存在my.cnf配置文件的[client]模块。 第一种方式每次都输入用户密…

JWT 基础知识

目录 什么是JWT JWT 的原理 JWT 的数据结构 Header Payload Signature 参考链接 什么是JWT Json Web Token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准&#xff08;RFC 7519。 该token被设计为紧凑且安全的&#xff0c;特别适用于分布式站…

gsap动画库入门

目录 前言 一、基本用法 (一) 安装 (二) 语法 (三) 简单动画 二、配置 (一) 动画方法 1. to 2. from 3. fromTo 4. set (二) 动画目标 (三) 动画属性 前言 官网&#xff1a;https://gsap.com/ 中文文档&#xff1a;GSAP 中文教程 中文文档 &#xff5c;官方文档 …

JAVA基础知识总结(上)(初识Java)

JDK的下载与环境变量的配置 JDK的下载 首先在官网找到JDK&#xff0c;然后根据电脑配置选择x64或者x32,然后一直next就可以了&#xff0c;不过重要的一点是记住存放的路径&#xff0c;因为后续环境配置需要复制这个路径。 为什么要配置环境变量 第一&#xff1a;JAVA_HOME环…

Vue | Vue 中的 refInForde 用法

refInFor&#xff1a;如果你在渲染函数中给多个元素都应用了相同的 ref 名&#xff0c;那么 $refs.myRef 会变成一个数组。 vue中的refInFor属性是Vue框架中用于在循环渲染的元素上设置引用的一种方式。‌ 在Vue中&#xff0c;‌ref属性通常用于给元素或子组件注册引用信息&am…

vue打包设置 自定义的NODE_ENV

默认NODE_ENV 自定义process.env.NODE_ENV的值_process.node.env的值-CSDN博客 ‌NODE_ENV开发环境下&#xff1a;NODE_ENVdevelopment(默认) 生产环境下&#xff1a;NODE_ENVproduction(默认) NODE_ENV 除了默认的 development 和 production 以外&#xff0c;确实可以自定义…

一款轻量级的Docker日志查看器!!【送源码】

今天给大家分享一款Docker日志查看神器。 背景 作为一名攻城狮&#xff0c;相信大家对Docker并不陌生&#xff0c;特别是现在盛行微服务时代&#xff0c;容器应用技术可谓是满天飞&#xff0c;Docker的好处和便捷就不多说了。 如今管你项目多大&#xff0c;先来个容器部署&a…

在Kubernetes中通过 pod 打开 pod所在宿主机上的shell

昨日一伙计突然问我 在么把自己打好的 docker镜像 上传到 kubernetes 的 节点的 local 镜像池。 现状大约如下&#xff1a; 1&#xff09;只有master节点的登录权限&#xff1b; 2&#xff09;不知道存在哪些worker节点也无法通过 master 借助SSH 登录到 worker节点 &#x…

算法的学习笔记—二叉搜索树的后序遍历序列(牛客JZ33)

&#x1f600;前言 在数据结构与算法的学习中&#xff0c;二叉搜索树&#xff08;BST&#xff09;是一个重要的概念&#xff0c;而后序遍历则是树的遍历方式之一。今天&#xff0c;我们将深入探讨一个经典问题&#xff1a;如何判断一个给定的整数数组是否是某个二叉搜索树的后序…

水利详细数据

有网友问水利数据的情况&#xff0c;前两天忙&#xff0c;没回应&#xff01;现在我将号内数据总结了一下&#xff0c;发给大家看看&#xff01;可以获取数据不限于以下&#xff0c;其它数据也可以根据需要转出和制作! 数据详细情况&#xff1a; 下面是关于水系方面的数据效果…

黑神话·悟空爆火,有哪些AI技术在助力?

北京时间8月20日上午10点&#xff0c;沉淀了4年的首款国产“3A”游戏《黑神话悟空》正式在各大游戏交易平台上线&#xff0c;迄今为止售出预计450万份。 昨天&#xff0c;各大社媒平台的热搜榜前列几乎都被「黑神话」相关词条霸占&#xff0c;并久居不下&#xff0c;大众的社交…

linux容器基础-namespace-2(net)

net namespace network namespace用来隔离网络环境&#xff0c;在network namespace中&#xff0c;网络设备、端口、套接字、网络协议栈、路由表、防火墙规则等都是独立的。 因为network namespace中具有独立的网络协议栈&#xff0c;因此每个network namespace中都有一个lo接…

向量数据库中的PQ(Procduct Quantization)

为了加快向量之间距离计算和比较速度&#xff0c;有人发明的Product Quantization方法&#xff0c;这个方法并不是一种索引&#xff0c;所以它并不能减少目标向量&#xff08;要查找的向量&#xff09;&#xff0c;与数据库中向量的比较次数&#xff0c;但是它可以加快与每个数…

黑神话孙悟空:自媒体小白的流量密码!

当下&#xff0c;黑神话孙悟空的热度如熊熊烈火&#xff0c;席卷了整个游戏世界。 只要与这个话题沾边&#xff0c;似乎就能轻松吸引大量关注。 那么&#xff0c;对于不怎么懂自媒体运营的小伙伴来说&#xff0c;该如何抓住这个机遇呢&#xff1f; 别担心&#xff0c;我们用以…

IO进程线程8月22日

1&#xff0c;思维导图 2&#xff0c;使用read和write实现文件拷贝 #include<myhead.h> int main(int argc, const char *argv[]) {int fp1,fp2;char a[1];fp1open("./1.txt",O_RDONLY);fp2open("./2.txt",O_CREAT|O_TRUNC|O_WRONLY,0664);if(fp1-…

简过网:博士考公务员有什么优势?还需要笔试吗?

博士生考公务员需要面试吗&#xff1f;这要看具体情况&#xff0c;一般来讲&#xff0c;公务员考试分为国考、省考和单招&#xff01; 很多公务员单招的一般可以免笔试&#xff0c;但是需要面试&#xff0c;但是对于国考和省考和统考来讲&#xff0c;博士是不能免笔试的&#…