执迷 执迷
首页
  • 技术分享

    • 小白都能看懂的闭包
    • GO-GMP模型
    • MySQL调优
    • centos7部署nacos
    • elasticserch
    • redis
  • 发布一个node插件

    • 发布一个npm包
    • 如何打包一个插件工具库
    • 打包工具的选择
  • JavaScript
  • ES6
  • CSS
  • 框架
  • Node
  • 服务
  • 其他
自我介绍
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

执迷

代码也是艺术
首页
  • 技术分享

    • 小白都能看懂的闭包
    • GO-GMP模型
    • MySQL调优
    • centos7部署nacos
    • elasticserch
    • redis
  • 发布一个node插件

    • 发布一个npm包
    • 如何打包一个插件工具库
    • 打包工具的选择
  • JavaScript
  • ES6
  • CSS
  • 框架
  • Node
  • 服务
  • 其他
自我介绍
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • JavaScript

  • ES6

  • CSS

  • 框架

    • vue
    • Angular6
      • Angularjs
      • ng题目
    • Node

    • 服务

    • 其他

    • 设计模式

    • web3

    • react

    • 学习笔记
    • 框架
    执迷
    2022-05-15
    目录

    Angular6

    # 概念

    • 组件:是angular应用的基本构建快,你可以把组件理解为一段带有业务逻辑和数据的HTML
    • 模块:模块用来将应用中不同的部分组织成一个Angular框架可以理解的单元
    • 路由:

    # 命令

    • ng new appName ————生存新项目

      • 注意:生成项目同时会下载npm依赖,如果失败需要换代理《nrm》
    • ng serve --open ————启动服务器并监听文件变化, --open(或 -o)打开浏览器

    • npm install -g @angular/cli ————安装最新版本

    • npm install -g @angular/cli@1.5.2 ————安装指定版本 1.5.2

    • npm uninstall -g @angular/cli ————卸载

    • ng serve --port 4202 ————以4202端口打开服务

    # angular-cli

    • ng -v ————查看angular cli版本
    • ng new xxx ————新建项目名称为XXX
    • ng generate component xxx ————生成组件
    • ng build ————打包项目
      • ng build --prod ————打包项目并且压缩
      • 注意:在最新版本ng6+ 的cli加上--prod参数就自动AOT了
    • ng test ————单元测试

    # 类型描述文件

    • 目的:让typescript认识jQuery和bootstrap,可以在ts文件中调用
    • 安装本地
      • npm install @types/jquery --save-dev
      • npm install @types/bootstrap --save-dev

    # 组件

    • 值绑定[src]、事件绑定(click)、双向绑定[()]

    • 内置结构指令

      • *ngIf、 *ngFor、 ngSwitch
    • 内置属性指令

      • NGClass、NgStyle、NgModel
      • ==注意:NgModel只能用在表单上,一般结合双休绑定[(Ngmodel)]使用==
    • 管道 过滤作用

      • public currentTime: Date = new Date(); //将currentTime过滤成指定格式
    • 安全导航

      • {{currentRace?.name}} // 如果currentRace没有name这个值则显示空,不会报错
    • 组件通讯

      • 父子组件之间交互(@Input/@Output/模板变量/@ViewChild)
      • 非父子组件之间的交互(Service/localStorage)
      • 还可以利用Session、路由参数来进行通讯、请展开自己想象

    # 模块

    # 路由

    • routers 路由配置,保存着哪个URL对应展示哪个组件,以及在哪个RouterOutlet中展示组件
    • RouterOutlet 在HTML中标记路由内容呈现位置的占位符
    • Router 负责在运行时执行的路由对象,可以通过调用navigate()和navigateByUrl()方法导航一个指定路由
    • RouterLink 在Html中声明路由导航用的指令
    • ActivatedRoute 当前激活的路由对象,保存着当前路由的信息,如路由地址,路由参数等。
    • # 传路由参数

      • 值绑定[queryParams]='{id:1}'
    • # 接路由参数

      • ActivatedRoute
    • # 重定向路由

      • 主要用途路由后面为空的时候默认为主页
      • {path:'',redirectTo:'/home',pathMatch:'full'}

    # 依赖注入

    • providers————提供者
    • Servic————服务
      • Angular 里面的 Service 与后端框架里面的 Service 设计思想是一致的:
      • Service 应该是无状态的。
      • Service 应该可以被很多组件复用,不应该和任何组件紧密相关。
      • 多个 Service 可以组合起来,实现更复杂的服务。
      • 如果你希望 Service 是全局单例的,需要把它定义到根模块里面。

    # 使用

    • 注入器
      • constructor(private productService:ProductService){...}
        • angular中只能用构造器注入服务
    • 提供器
      • 要注入服务的时候一定要在providers里声明掉
      • providers:[ProductService]
      • providers:[{provide: ProductService,useClass:AnotherProductService}]
    #angular
    上次更新: 2024/07/21, 21:46:04
    vue
    Angularjs

    ← vue Angularjs→

    最近更新
    01
    MySQL调优 原创
    08-04
    02
    MySQL底层 原创
    07-30
    03
    consul单台机器部署,注册外网服务健康检查 原创
    07-30
    更多文章>
    Theme by Vdoing | Copyright © 2019-2024 执迷 | 闽ICP备2022018045号 | MIT License
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式