angular2.x 学习笔记 -01

栏目: 编程语言 · AngularJS · 发布时间: 7年前

内容简介:### 1.angular-cli 常用命令记录详细教程1.创建项目 ng new

angular2.0 学习笔记

### 1.angular-cli 常用命令记录

详细教程 angular cli官网 有,这里不详细说明,感兴趣的可以自行到官网看,一下仅记录本人到学习过程常用到的命令

1.创建项目 ng new

ng new project-name 

  exp:
  ng new my-app

2.启动项目 ng serve

参数名 类型 默认值 作用 exp
--port number 4200 自定义端口 ng serve --port 4201

3.创建module

ng generate module module-name

  // 简写:
  ng g m moduleName

  // 新建带对应路由的module
  ng generate module my-module-name --routing

  // 简写 
  ng g m my-module --routing

  // 检查创建时检查module是否存在
  ng g m my-module --spec

4.创建 component

ng generate component component-name (options)

  // 简写
  ng g c component-name

  // options exp 
  // 在src/app 目录下生成component-name 组件
  ng g c component-name --flat true

以下是components options说明

参数 类型 默认值 作用
--flat boolean false 在src/app目录下生成 component 文件,而不是在当前目录下
--inline-template boolean false 使用 inline template 而不是独立的 html template 文件
--inline-style boolean false 使用 inline style,而不是独立的style 文件
--spec boolean false 是否生成component对应的 spec 单元测试ts文件

5.创建指令 ng directive

ng generate directive my-directive (options)

  // 简写
  ng g d my-directive

  // options exp 
  // 在src/app 目录下生成 my-directive 指令
  ng g d my-directive --flat true

ng directive 指令 options 参数 说明

参数 类型 默认值 作用
--flat boolean false 在src/app目录下生成 derective 文件,而不是在当前目录下
--spec boolean false 是否生成directive对应的 spec 单元测试ts文件

6.创建service

ng generate service service-name (options)

  // 简写
  ng g s service-name

ng service options 说明

参数 类型 默认值 作用
--flat boolean false 在src/app目录下生成 service 文件,而不是在当前目录下
--spec boolean false 是否生成service对应的 spec 单元测试ts文件

7.构建 ng build

ng build

  // 设置 输出文件位置 为 myDist 文件夹
  ng build --output-path myDist

2.angular(简称ng) 笔记 一下

此笔记不会从0到1讲解,仅做为记录本人学习angular2.x以上版本到学习笔记,如有问题可以提问,希望我遇到到问题可以帮助到你到学习,如有一切不理解到问题,请移步到 angular官方文档angular中文文档 查看更详细的说明

由于本人原先是使用vuejs和reactjs为主,所以有很多时候都是以vue作为对比例子理解,如有说得不清楚的,欢迎提bug。

  1. ng 架构 主要由4大部分组成
ng 架构
模块 组件 服务与依赖注入 路由

2.模块

ng的模块,理解起来跟我以前理解的模块还真不一样。ng模块需要通过NgModule去定义,而且ng的模块在我的理解概念上是一个相对独立的集合体,模块声明了当前模块使用到的相关组件、指令、管道、服务和一些编译配置。对比与vue的组件理解,ng模块显得略为有点麻烦,但也更为清楚的表达了模块和组件的关系,组件和模块不是一个意思。vue的模块,更多时候是vue工程已经帮开发者处理好了,不用自己去定义模块,只需要关注组件业务开发即可。当然,vue的组件也是需要注册到vue对象里面到,可以在全局注册,也可以注册到当前使用到组件,在组件注册这里,vue和ng都是一样需要手动注册。

import {NgModule} from '@angular/core';
  import {BrowserModule} from '@angular/platform-browser';
  @NgModule({
    imports: [BrowserModule], // 本模块需要注入的其他模块‘
    /*
    * export
    * 本模块导出的组件、指令、管道,如果其他模块引入了本模块,在其他模块可以直接使用本模块输出的组件、指令和管道
    */
    exports: [],
    // providers本模块向全局服务中贡献的服务创建器,本人暂时也不知道是啥,后期研究明白了再单独写一篇补上吧
    providers: [Logger], 
    // bootstrap 指定了本模块启动时,应该启动的组件
    bootstrap: [],
    // id 模块ID,用于使用getModuleFactory区分模块
    id: 'myApp'
  })
  export class AppModule {}

以上注解有部分借鉴于 石头皮的ANGULAR2_NGMODULE模块详解

3.组件

ng的组件,就是但存的组件,跟vue的组件是类似的东西。只不过ng的组件需要@Component装饰器定义一些组件配置,包括 selector, template/templateUrl, providers, styles/styleUrls等。然后组件保安有模版、指令、数据绑定、管道(filter)、事件/属性绑定、

4.服务与依赖注入

这个其实与angularjs差别不大,服务还是可以用于组件之间的数据通讯,注入让服务更灵活,需要时注入。

5.路由

定义导航的规则,并且把导航与组件或module关联起来。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Zero to One

Zero to One

Peter Thiel、Blake Masters / Crown Business / 2014-9-16 / USD 27.00

“This book delivers completely new and refreshing ideas on how to create value in the world.” - Mark Zuckerberg, CEO of Facebook “Peter Thiel has built multiple breakthrough companies, and ......一起来看看 《Zero to One》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具