”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 安全地试验 Angular 现有项目的开发人员指南

安全地试验 Angular 现有项目的开发人员指南

发布于2024-08-07
浏览:563

在不中断现有项目的情况下探索 Angular 18

我最近正在开发 Angular 17 项目,并渴望探索 Angular 18 令人兴奋的新功能。但是,我希望以一种不会影响已经投入生产或正在运行的现有项目的方式来实现这一点。质量检查阶段。这提出了一些挑战:

  • 全局 Angular 17: 我在全局安装了 Angular CLI 版本 17。
  • Angular 18 要求: Node.js 版本 18.19 或更高版本是 Angular 18 的先决条件。
  • 保留现有项目:我需要保持现有的 Angular 17 项目不变。

利用节点版本管理器 (NVM):

为了解决这个问题,我决定利用节点版本管理器(NVM)。 NVM 允许您管理系统上的多个 Node.js 版本,从而可以轻松地在不同项目之间进行切换。我的设置方法如下:

  1. 安装NVM:您可以按照NVM官网的说明在这里下载并安装。

  2. 安装 Node.js 18 : 安装 NVM 后,我使用了命令

nvm install latest 

这安装了最新的 Node.js 版本(当时是 22.4.1)。

创建单独的开发环境:

接下来,我为我的 Angular 18 实践项目创建了一个单独的目录。这有助于将环境与我现有的项目隔离。

本地安装 Angular 18:

要为此特定项目安装 Angular 18,我使用了以下命令:

npm install @angular/cli@latest 

注意缺少 -g。这会在项目目录中本地安装最新的 Angular CLI 版本(当时是 18.1.0),而不影响全局安装。

惊喜!还没有完全实现:

Angular 17 (Global installation)

当我尝试使用 ng newpractice-project 创建新项目时,它默认使用全局安装的 Angular CLI 版本 (17)。这就是 npx 的魔力所在。

介绍节点包执行器(npx):

npx 允许您从 npm 执行包,而无需全局安装它们。事实证明,这是在我的新项目中使用特定 Angular CLI 版本 (18) 的关键。这是获胜命令:

npx @angular/cli@18 new my-angular-18-project

我通过执行 ng version 来验证项目

Angular 18 (Local configured)

成功!探索 Angular 18:

等待安装必要的依赖项后,我有一个全新的 Angular 18 项目(my-angular-18-project)准备就绪!这使我能够探索 Angular 18 的所有新功能,包括令人兴奋的 @let 语法,而不会干扰我现有的 Angular 17 项目。

版本声明 本文转载于:https://dev.to/ingila185/safely-experiment-with-angular-18-a-guide-for-developers-with-existing-16-17-projects-3c3?1如有侵犯,请联系[email protected]删除
最新教程 更多>
  • C ++如何实现类型的擦除:技术的比较?
    C ++如何实现类型的擦除:技术的比较?
    在c 虚拟函数使用模板功能,将实际对象存储在void*指针中。 boost.function利用此技术隐藏函数的真实类型。基于template基于template的类型擦除而无需虚拟函数或void* manipulation ,Gman的方法利用模板隐藏实际类型不诉诸虚拟函数或void*操纵。[&...
    编程 发布于2025-02-07
  • 如何在Java字符串中有效替换多个子字符串?
    如何在Java字符串中有效替换多个子字符串?
    Exploiting Regular ExpressionsA more efficient solution involves leveraging regular expressions.正则表达式允许您定义复杂的搜索模式并在单个操作中执行文本转换。示例示例usage 接下来,您可以使用匹配器...
    编程 发布于2025-02-07
  • 如何使用char_length()在mySQL中按字符串长度对数据进行排序?
    如何使用char_length()在mySQL中按字符串长度对数据进行排序?
    [2使用内置的char_length()function。 char_length()和length() 此查询将从指定的表中检索所有行,并基于上升顺序对它们进行排序指定列的字符长度。带有更长字符串的行将出现在结果的底部。
    编程 发布于2025-02-07
  • 如何从PHP卷曲响应中提取cookie中的cookie?
    如何从PHP卷曲响应中提取cookie中的cookie?
    从php curl响应中检索cookie在某些情况下,在某些情况下,在某些情况下,外部API响应可能会不足地嵌入HTTP Header中的cookie ,而不是利用诸如肥皂或休息之类的常规通信协议。为了促进这些cookie将这些饼干提取到结构化的阵列中而无需求助于艰辛的解析,可以采用以下技术。*)...
    编程 发布于2025-02-07
  • 'exec()
    'exec()
    Exec对本地变量的影响: exec function,python staple,用于动态代码执行的python staple,提出一个有趣的Query:它可以在函数中更新局部变量吗? python 3 Dialemma 在Python 3中,以下代码shippet无法更新本地变量,因为人们...
    编程 发布于2025-02-07
  • 如何使用PHP显示在MySQL中存储的图像?
    如何使用PHP显示在MySQL中存储的图像?
    检索并显示在php 答案:是的,使用PHP有几种方法可以实现此转换,取决于已安装的图像库。 使用GD库:Using the ImageMagick (iMagick) Library:
    编程 发布于2025-02-07
  • 如何使用替换指令在GO MOD中解析模块路径差异?
    如何使用替换指令在GO MOD中解析模块路径差异?
    克服go mod中的模块路径差异 coreos/bbolt:github.com/coreos/ [email受保护]:解析go.mod:模块将其路径声明为:go.etcd.io/bbolt `要解决此问题,您可以在go.mod文件中使用替换指令。只需在go.mod的末尾添加以下行:[&& &...
    编程 发布于2025-02-07
  • 如何在Java列表中有效计算元素的发生?
    如何在Java列表中有效计算元素的发生?
    计数列表中的元素出现在列表 中,在java编程中,列举列表中列举元素出现的任务来自列表。为此,收集框架提供了全面的工具套件。在这种情况下,Batocurrences变量将保持值3,代表动物列表中的“ BAT”出现的数量。 &&& [此方法是简单的,可以得出准确的结果,使其成为计算列表中元素出现的理...
    编程 发布于2025-02-07
  • 我可以将加密从McRypt迁移到OpenSSL,并使用OpenSSL迁移MCRYPT加密数据?
    我可以将加密从McRypt迁移到OpenSSL,并使用OpenSSL迁移MCRYPT加密数据?
    将我的加密库从mcrypt升级到openssl 问题:是否可以将我的加密库从McRypt升级到OpenSSL?如果是这样?使用openssl?答案:可以使用mcrypt数据加密数据,可以使用openssl。关于如何使用openssl对McRypt进行加密的数据: openssl_decrypt...
    编程 发布于2025-02-07
  • \“(1)vs.(;;):编译器优化是否消除了性能差异?\”
    \“(1)vs.(;;):编译器优化是否消除了性能差异?\”
    使用(1)而不是(;;)会导致无限循环的性能差异? 现代编译器,(1)和(;;)之间没有性能差异。 是如何实现这些循环的技术分析在编译器中: perl: S-> 7 8 unstack v-> 4 -e语法ok 在GCC中,两者都循环到相同的汇编代码中,如下所示:。 globl t_时 t_时...
    编程 发布于2025-02-07
  • 在映射到MySQL枚举列时,如何确保冬眠保留值?
    在映射到MySQL枚举列时,如何确保冬眠保留值?
    在hibernate中保存枚举值:故障排除错误的列type ,他们各自的映射至关重要。在Java中使用枚举类型时,至关重要的是,建立冬眠的方式如何映射到基础数据库。在您的情况下,您已将MySQL列定义为枚举,并在Java中创建了相应的枚举代码。但是,您遇到以下错误:“ MyApp中的错误列类型。...
    编程 发布于2025-02-07
  • 版本5.6.5之前,使用current_timestamp与时间戳列的current_timestamp与时间戳列有什么限制?
    版本5.6.5之前,使用current_timestamp与时间戳列的current_timestamp与时间戳列有什么限制?
    在默认值中使用current_timestamp或mysql版本中的current_timestamp或在5.6.5 这种限制源于遗产实现的关注,这些限制需要为Current_timestamp功能提供特定的实现。消息和相关问题 `Productid` int(10)unsigned not ...
    编程 发布于2025-02-07
  • 如何可靠地检查MySQL表中的列存在?
    如何可靠地检查MySQL表中的列存在?
    在mySQL中确定列中的列存在,验证表中的列存在与与之相比有点困惑其他数据库系统。常用的方法:如果存在(从信息_schema.columns select * * where table_name ='prefix_topic'和column_name =&...
    编程 发布于2025-02-07
  • 如何使用PHP将斑点(图像)正确插入MySQL?
    如何使用PHP将斑点(图像)正确插入MySQL?
    在尝试将image存储在mysql数据库中时,您可能会遇到一个可能会遇到问题。本指南将提供成功存储您的图像数据的解决方案。 easudy values('$ this-> image_id','file_get_contents($ tmp_image)...
    编程 发布于2025-02-07
  • 如何修复\“常规错误:2006 MySQL Server在插入数据时已经消失\”?
    如何修复\“常规错误:2006 MySQL Server在插入数据时已经消失\”?
    插入记录时如何解决“一般错误:2006 MySQL 服务器已消失”介绍:将数据插入 MySQL 数据库有时会导致错误“一般错误:2006 MySQL 服务器已消失”。当与服务器的连接丢失时会出现此错误,通常是由于 MySQL 配置中的两个变量之一所致。解决方案:解决此错误的关键是调整wait_tim...
    编程 发布于2025-02-07

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3