新建项目

请在终端/控制台窗口中运行 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. win7(64)使用vim碰到的奇怪问题

    一直使用conemu做控制台使用vim,操作系统win7 64位,一直用的很好. 今天使用gvim打开文件发现c:\program file(x86)\vim\_vimrc不生效,最奇怪的是,采用控制 ...

  2. java基础---->多线程之wait和notify(八)

    这里学习一下java多线程中的关于wait方法和notify方法的用法.命运不是风,来回吹,命运是大地,走到哪你都在命运中. wait和notify方法的使用 一.wait与notify的简单实例 i ...

  3. 微信Tinker的一切都在这里,包括源码(一)

    版权声明:本文由张绍文原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/101 来源:腾云阁 https://www.qclo ...

  4. 【BZOJ4515】[Sdoi2016]游戏 树链剖分+线段树

    [BZOJ4515][Sdoi2016]游戏 Description Alice 和 Bob 在玩一个游戏. 游戏在一棵有 n 个点的树上进行.最初,每个点上都只有一个数字,那个数字是 1234567 ...

  5. shell爬虫简易脚本(线程数可控)

    1.介绍 以机电之家网站为例 经过初步分析,机电之家的数据量较大,并且数据组织规则较为统一,适合以代码方式进行全量爬取. 企业列表URL统一为http://www.jdzj.com/yp_vlist_ ...

  6. angularJS中的MVC思想?

    mvc 思想: 将应用程序的组成,划分为三个部分:model , controller 和 view ; - 控制器的作用是用来初始化模型用的: - 模型就是用于存储数据的: - 视图是展示数据的: ...

  7. 使用异步消息处理更新UI线程

    1. Android的UI时线程不安全的,如果在子线程中更新UI会出现异常,导致程序崩溃. 为了解决如上这些问题,我们常用的做法就是使用Android的异步消息机制实现即可(创建一个Message对象 ...

  8. EF的使用(DbContext对象的共用问题)

    1.问题的引入 对于某一个数据库的EF操作对象,当执行某一次请求的时候,可能会多次操作数据库,也就是可能创建很多MyDbContext(继承自DbContext对象,EF上下文对象) 2.代码创建 当 ...

  9. ubuntu16.04下安装opencv-3.1.0及其扩展模块opencv_contrib

    步骤1.安装依赖项 sudo apt--dev pkg-config libavcodec-dev libavformat-dev libswscale-dev 可选的 sudo apt--dev l ...

  10. angular-translate国际化

    1.<h1>{{"hello" | translate}}</h1>2.<h1 ng-bind-html="'hello' | transl ...