什么是Angular cli?怎么使用?

文章2022-09-1395 人已阅来源:网络

什么是Angular cli?本篇文章带大家了解一下Angular中的Angular cli,介绍一下Angular cli的使用方法,希望对大家有所帮助!

什么是Angular cli?怎么使用?

1. 什么是Angular cli

它是一个命令行界面工具,可用于初始化、开发、构建和维护 Angular 应用。【相关教程推荐:《angular教程》】

2. 如何安装

无npm先去下载nodejs

https://nodejs.org/en/download/

npm install -g @angular/cli

卸载的话也需要带上-g

npm uninstall -g @angular/cli

3. 如何使用

new|n指n是new的缩写,效果相同,下同。

3.1 创建项目(new | n)

ng new my-project

它会创建一个angular基础项目并且下载依赖运行项目,默认端口是4200。

可能需要用到的自定义内容

用法形如:

 ng new my-project --xxx=x

以下不特殊注明默认值均为false

参数 意义
`--force=true false`
`--routing=true false`
`--skipInstall=true false`
`--skipTests=true false`
`--force=true false`
`--style=css scss
`--packageManager=npm yarn
--prefix=prefix 指定选择器的前缀(组件、指令),如传入--prefix=dep则组件的selector会成为dep-xxx

呀,创建的时候没有自定义,怎么补救呢? 直接在angular.json中改~

3.2 新建文件(generate | g)

新建一个基础文件,里面有预设的代码片段。如ng generate service demo,则会在当前文件夹新建一个demo.service.ts

命令 作用 简写
ng generate module xx 新建模块 ng g m xx
ng generate component xx 新建组件 ng g c xx
ng generate directive xx 新建指令 ng g d xx
ng generate service xx 新建服务 ng g s xx
ng generate pipe xx 新建管道 ng g p xx

还有个更简单的方法:

vscode 中下载Angular Files插件,搜索alexiv.vscode-angular2-files即可找到。想在哪里创建点哪里。用起来爽歪歪。后面会写一个vscode开发angular好用的插件~

3.3 运行项目(serve | s)

配置 意义
--host=xx 设置应用的主机地址,别人可以根据这个地址访问你启动的应用。xx可以是你的ip或者0.0.0.0
--open=true|false true则在启动项目后自动打开页面,简写: ng server -o
--port 设置启动的端口号,避免启动多个项目占用同一个端口启动不起来
--proxyConfig=xx 设置代理文件
--watch=true|false 是否在代码更改时自动重新构建刷新页面,默认true
--aot=true|false 是否以预编译模式启动项目,默认为false。
缺点:项目运行时间增长。
优点:有时开发时没问题,打包上线之后出现问题可以在本地开启它来调试错误。

3.4 打包项目(build | b

配置 意义
--baseHref=xx index.html访问其他静态资源文件的相对路径。也可以在index.html的<base href="xx">中配置,还可以在.angular.json中的baseHref配置。
--aot=true|false 是否以预编译模式启动项目, 默认false,一般在angular.json中配置
--optimization=true|false 是否启用构建输出的优化。
--configuration=xx 指定打包环境的配置
--prod=true|false --configuration=production的简写。true则以生产环境的方式打包,进行摇树优化等操作。
--configuration详解

当我需要打成不同的环境包时,可以使用以下方法:

在angular.json中做了如下配置,:

{
    projects: {
        project-name: {
            architect: {
                build: {
                    configurations: {
                        production: {
                            "fileReplacements": [
                                {
                                  "replace": "src/environments/environment.ts",
                                  "with": "src/environments/environment.prod.ts"
                                }
                            ],
                            ...
                        },
                        qa: {
                             "fileReplacements": [
                                {
                                  "replace": "src/environments/environment.ts",
                                  "with": "src/environments/environment.qa.ts"
                                }
                            ],
                            ...
                        },
                        sit: {
                             "fileReplacements": [
                                {
                                  "replace": "src/environments/environment.ts",
                                  "with": "src/environments/environment.sit.ts"
                                }
                            ],
                            ...
                        }
                    },
                    
                }
            }
        }
    }
}

之后可以进行不同的环境打包:

  • qa: ng build --c=qa
  • sit: ng build --c=sit
  • prod: ng build --c=production

--c 是 --configuration的缩写

3.5 更新项目(update

angular半年更新一个大版本,及时更新版本是非常重要的事情,如果落后高于1个版本以上,后续可能升级会很麻烦(别问我怎么知道,再问跳楼)。

从一个主版本升级到另外一个主版本,升级之前最好看下官方的升级指南

ng update @angular/cli@^<major_version>  @angular/core@^<major_version>
  • 先查看有哪些可以更新
ng update
  • 可以单个更新,也可选择全部更新
ng update --all
  • 如果更新时提示有的依赖包版本不一致,可以强制更新
Package "@angular/compiler-cli" has an incompatible peer dependency to "typescript" (requires ">=2.7.2 <2.8", would install "2.5.3")
Incompatible peer dependencies found. See above.

强制更新办法:

ng update --all --force

如何修改update默认下载工具为yarn

ng config --global cli.packageManager yarn
ng set --global packageManager=yarn

3.6 其他

  • ng lint: 运行代码规则检测
  • ng test: 运行单元测试
  • ng e2e: 运行端到端测试
  • ng add: 添加一个第三方库到项目中,并且将其自定义配置也添加到项目中。如何写一个可以用ng add添加的自定义配置的第三方包?

更多用法更新于 github

https://github.com/deepthan/blog-angular

更多编程相关知识,请访问:编程视频!!

以上就是什么是Angular cli?怎么使用?的详细内容!