新建项目

请在终端/控制台窗口中运行 ng -v 命令。 确定您已安装@angular/cli

if没有执行 npm install -g @angular/cli 全局安装 Angular CLI。

ng new project-name

就具体项目开发前调研技术栈追加相关参数

  • 样式style 如 --style=scss value值可以是(css | scss | sass | less | stylus )等

  • 项目中使用路由routing 如 --routing 生成routing module

  • 前缀 prefix 如 --prefix-p 默认为app,参数自定义 比如 --prefix=wn

后话

angular.json 文件中 "prefix": "app", 会更改为"prefix": "wn"

tslint验证规则 项目中所有的组件前缀都改为wn开头的 index.html文件<app-root></app-root>变为<wn-root><wn-root>

所有 ng g c component-name 生成的组件 prefix默认时使用<app-componet-name></app-componet-name> 自定义前缀后 <wn-componet-name></wn-componet-name>

综合上述 ng new project-name --style=scss --routing --prefix=wn

更多参数参考 ng new

启动项目

ng serve 或者 npm run start

  • 开发环境项目如开始对接接口需要配置本地代理
  1. 一般在根目录下添加proxy.config.json文件
{
"/api": {
"target": "http://xxx.xxx.com",
"secure": false,
// "logLevel":"debug",
"changeOrigin": true,
"pathRewrite":{
"^/api":""
}
}
}
  1. 文件package.json中scripts 下 start的value值ng serve --proxy-config proxy.config.json 或者在angular.json 中 serve下 options添加属性 "proxyConfig":"proxy.config.json"

ng serve 其他参数

  • 接口默认4200 --port 4201
  • 启动时自动打开浏览器 --open 简写-o
  • 用host指定运行主机 --host 0.0.0.0 --public-host 192.168.1.111 指定浏览器客户端将使用的URL
  • 正在生成的应用程序的基URL --base-href /admin/或者 --base-href http://www.example.com/ 相当于index.html添加html标签 属性href规定页面中所有相对链接的基准 URL。 如 <base href="http://www.example.com/"> 注:参数值后面一定要多个 / 结尾,否则无效
综合上述1(未对接) ng serve --port 4201 --open
综合上述2 ng serve --proxy-config proxy.config.json --host 0.0.0.0 --port 4201 --open

更多参数参考 ng serve

项目开发

  1. 生成组件
  • ng g c component-name 生成在src下全局组件
  • ng g c module-name/component-name 组件生成在某模块下src下,并声明注册该模块
  • ng g c path/component-name 组件生成在项目path路径下,默认注册父模块,由父模块决定是否是全局组件还是某模块组件;

禁止生成spec.ts文件 -- --no-spec

  1. 生成模块 ng g m module-name 同上

    其他参数
  • --routing 生成路由模块。
  • --module 允许指定声明模块

综上: ng g m module-name --routing --module module-name

  1. 生成服务 ng g s service-name 同上

  2. 生成管道(原1.x中过滤器) ng g p pipe-name

  3. 生成指令 ng g d directive-name

    指令分 属性型指令和结构型指令

  4. 生成class ng g cl class-name class-mame一般首字母大写,驼峰

  5. 生成接口interface ng g i interface-name 接口为ts特性 类型检查 声明参数类型

更多参数参考 ng generate

编译项目

ng buildnpm run build

参数

  • --base-href /myUrl/ 相当于在index.html中添加,默认

  • --prod 通过UglifyJS 删除更多未使用的代码,使项目编译后更小体积

  • --output-hashing all 编译后输出文件名以哈希模式,便于缓存

  • --stats-json 生成一个“stats.json”文件,可以使用诸如:webpack bundle analyzer'或https://webpack.github.io/analyse.等工具进行前端分析。

  • --aot 启用aot预编译

  • --build-optimizer 使用“aot”选项时启用@angular-devkit/build-optimizer 优化。

更多参数参考 ng build

angular6开发不完全笔记(一) -- ng-cli的更多相关文章

  1. 第一章 Andorid系统移植与驱动开发概述 - 读书笔记

    Android驱动月考1 第一章 Andorid系统移植与驱动开发概述 - 读书笔记 1.Android系统的架构: (1)Linux内核,Android是基于Linux内核的操作系统,并且开源,所以 ...

  2. Android开发艺术探索笔记——View(二)

    Android开发艺术探索笔记--View(二) View的事件分发机制 学习资料: 1.Understanding Android Input Touch Events System Framewo ...

  3. Android开发艺术探索笔记—— View(一)

    Android开发艺术探索笔记 --View(一) View的基础知识 什么是View View是Android中所有控件的基类.是一种界面层控件的抽象. View的位置参数 参数名 获取方式 含义 ...

  4. UWP开发入门系列笔记之(一):UWP初览

    标签: 随着微软Build2015带来的好消息,Win10正式版发布的日子已经离我们越来越近了,我们也终于欣喜地看到:一个统一的Windows平台对于开发人员来说充满了吸引力,这局棋下的好大的说--于 ...

  5. 《PHP与MySQL WEB开发》读书笔记

    <PHP与MySQL WEB开发>读书笔记 作者:[美]Luke Welling PHP输出的HereDoc语法: echo <<<theEnd line 1 line ...

  6. 转:【iOS开发每日小笔记(十一)】iOS8更新留下的“坑” NSAttributedString设置下划线 NSUnderlineStyleAttributeName 属性必须为NSNumber

    http://www.bubuko.com/infodetail-382485.html 标签:des   class   style   代码   html   使用   问题   文件   数据 ...

  7. Android开发艺术探索笔记——第一章:Activity的生命周期和启动模式

    Android开发艺术探索笔记--第一章:Activity的生命周期和启动模式 怀着无比崇敬的心情翻开了这本书,路漫漫其修远兮,程序人生,为自己加油! 一.序 作为这本书的第一章,主席还是把Activ ...

  8. Java高级开发工程师面试笔记

    最近在复习面试相关的知识点,然后做笔记,后期(大概在2018.02.01)会分享给大家,尽自己最大的努力做到最好,还希望到时候大家能给予建议和补充 ----------------2018.03.05 ...

  9. 「Android 开发」入门笔记

    「Android 开发」入门笔记(界面编程篇) ------每日摘要------ DAY-1: 学习笔记: Android应用结构分析 界面编程与视图(View)组件 布局管理器 问题整理: Andr ...

随机推荐

  1. 【Redis】 make编译是提示 make cc Command not found

    在linux系统上对redis源码进行编译时提示提示“make cc Command not found,make: *** [adlist.o] Error 127”. 这是由于系统没有安装gcc环 ...

  2. linux 允许mysql用户远程访问

    搭建服务器..怎么导入数据库?  直接来个用户吧 数据库名字(已存在): table 创建mysql新用户,并指定数据库,允许远程访问 mysql用户: test mysql用户密码: test666 ...

  3. 网络子系统46_ip协议数据帧的转发

    //调用路径ip_rcv->ip_rcv_finish->dst_input->(skb->dst->input) //ip_forward以回调函数的形式,保存在skb ...

  4. hdu5411 CRB and Puzzle[矩阵优化dp]

    CRB and Puzzle Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)To ...

  5. Sql Server 关于列名带中括号"[]"的问题

    1.如果列名为数据库的关键字则自动加上中括号“[]” 例如[level] 2.如果列名中带有特殊符号.[date(a)] 数据存储的过程: 1.在添加数据的时候:要带有中括号,有必要在添加参数的时候不 ...

  6. mysql查看线程详解(转载)

    如果有 SUPER 权限,则可以看到全部的线程,否则,只能看到自己发起的线程(这是指,当前对应的 MySQL 帐户运行的线程). mysql> show processlist; +—–+——— ...

  7. mysql登录密码特殊字符处理

    mysql -h 192.168.12.23 -u root  -pClz_b1qYPyl6$Zu1 登录报错 mysql -h 192.168.12.23 -u root  -pClz_b1qYPy ...

  8. CommonHelper 公共类

      public static class CommonHelper 公共帮助类 using System.Collections.Generic; using System.Linq; using ...

  9. Oracle数据类型clob和blob

    clob(size)变长 字符型大对象,最大8tb 应用场景:如果varchar2不够用了使用clob blob(size)变长 二进制数据,可以存放图片声音 8tb 但是,实际工作中很少把图片和声音 ...

  10. 奇怪的Visual Studio 2013停止响应问题

    昨天开始遭遇这个问题,今天再次遭遇. 疑似问题发生在写代码的窗口中复制/粘贴时(有待进一步确认触发条件),突然停止响应,出现下面的对话框: 对话框中的文字为: Waiting for a requir ...