Angular常识回顾

一.框架对比

1.Angular8 VS AngularJS
  • AngularJS
    • 开发语言为JavaScript
    • 采用不同的指令进行数据和事件绑定
    • 可扩展性差,在复杂应用上维护性差
  • Angular8的优点
    • TypeScript提供类型检查和代码提示
    • 采用[]进行数据绑定,()事件绑定
    • 优异的可扩展性,可维护性
2.与React对比
  • Angular是一个完整框架,而React是一个类库,其对应Angular的各种特性,需要寻找各种开源社区类库,如下表所示

    特性Angular包React类库
    数据绑定、依赖注入@angular/coreMobX
    动态属性rxjsMobX
    路由@angular/routerReact Router v4
    组件库@angular/materialReact Toolbox
    样式绑定、样式隔离@angular/coreCSS modules
    表单验证@angular/formsFormState
    命令行@angular/clicreatereactapp
  • Angular使用HTML+CSS+组件库,而React是所有都是JS

3.与Vue对比
  • Vue很多思想脱胎于Angular.js,和React类似是一个轻量级的,面向View层的类库。
  • Vue适合快速开发较少的工程,而Angular自带编码格式,使得它成为与多个开发人员合作时的好选择。
  • Vue是个人开发者维护的开源项目,而Angular是Google的开源项目。

二.入门常识

1.VSCode插件
  • Material Theme:颜色主题
  • Debugger for Chrome:Chrome的断点调试工具
  • Path intellisense:自己引用的类库有对应的提示
  • Angular Files:以图形界面的形式帮我们执行CLI命令
  • Angular Language Service:使得在模板中可以有对应的Controller智能提示
  • Angular 8 Snippets:提供快捷代码块生成方法
2.Chrome开发者工具
  • Element:页面元素,样式调试
  • Console:控制台输出
  • Sources:源码,并可以设置断点
  • Network:网络请求
  • Performance:性能的工具
  • Memory:内存的分析工具
  • Application:存储信息
  • Augury插件:从Angular角度查看组件,模拟发射事件等等
3.使用Angular-Cli
  • 使用ng new 项目名创建项目。当不希望提示安装依赖、指定样式及取消路由时可以使用ng new 项目名 --skip-install --style css --routing false
  • 相关包作用
    • e2e目录:测试目录
    • .editorconfig:在不同的代码编辑器中维持同样的代码风格,比如缩进都用两个空格等等
    • .gitignore:git中忽略提交哪些文件
    • angular.json:Angular的配置文件,设置angular的多项目,里面配置对应的属性比如源码目录在哪,针对不同的任务要做的事儿如build将结果输出到哪些文件里等等
    • package.json文件:任何一个软件包都会有的描述文件,里面有对应的配置,主要有dependencies(项目里直接要使用的类库,直接引用进来直接调用)npm i --save 软件包名和devDependencies(只在开发中需要使用的类库如typescript只在编译时候使用,因为编译之后会将Typescript打包成JavaScript,在运行时不需要)npm i --save-dev 软件包名
      • 其中script里面会定义一些脚本命令用于启动ng xxx相关命令,这比直接使用命令行启动的好处在于使用script执行的时候会直接使用当前依赖的@angular/cli的版本,而不是全局的。全局要安装对应的cli版本只能有一个,而不同项目引用的cli版本可以不同。
      • 版本大版本号.小版本号.补丁版本号
      • ~表示大版本号和小版本号相同,当每次安装的时候安装的是最新的补丁
      • ^表示大版本号相同,其他的最高版本
      • 什么都不写是严格要求版本
    • package-lock.json:解决依赖冲突的问题,在真正下载的时候根据lock.json下载真正要依赖的软件包
    • README.md:markdown格式的介绍文件
    • tsconfig.json:对ts进行相关配置,指定编译成的js文件是什么样的
    • tslint.json:静态代码扫描。不需要运行,在编译或真正写代码的时候按照规则进行扫描,当规则不满足时IDE会进行报错,保持代码风格的一致,执行ng lint时也会进行相应的提示。

未完待续

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值