Angular CLI常用命令——创建模块(ng generate module)

选中文字可对指定文章内容进行评论啦,绿色背景文字可以点击查看评论额。

版本:v13

基本命令

ng generate module <name> [options]

简写

ng g m <name> [options]

选项说明

  • --flat:在当前项目的根目录创建文件,bool,默认false
  • --module:简写-m,和--route一起使用,声明懒加载挂载的路由模块
  • --project:项目名,string
  • --route:懒加载模块的路由路径,这个需要和--module一块使用,即在那个,string
  • --routing:创建路由模块,bool,默认false
  • --routing-scop:指定路由的作用域,值:Root和Child,一个应用只有一个Root,默认Child

创建文件路径说明:

  1. 在根目录执行命令,会在src/app下创建模块目录
  2. 在src/app子目录下执行命令,会在当前子目录下创建模块目录

示例

一、创建基本模块

>ng g m test
CREATE src/app/test/test.module.ts (190 bytes)

效果:

  1. 创建test目录,
  2. 在test目录下创建模块声明文件test.module.ts

二、创建带有路由的模块

ng g m test --routing
CREATE src/app/test/test-routing.module.ts (247 bytes)
CREATE src/app/test/test.module.ts (272 bytes)

效果:

  1. 创建test目录
  2. 在test目录下创建路由文件test-routing.module.ts
  3. 在test目录下创建模块文件test.moude.ts

test-routing.module.ts内容:

import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';

const routes: Routes = [];

@NgModule({
  imports: [RouterModule.forChild(routes)],
  exports: [RouterModule]
})
export class TestRoutingModule { }

生成文件的routing-scop是:RouterModule.forChild(routes)

三、创建懒加载模块

ng g m test --routing --route=mytest -m app
CREATE src/app/test/test-routing.module.ts (335 bytes)
CREATE src/app/test/test.module.ts (343 bytes)        
CREATE src/app/test/test.component.html (19 bytes)    
CREATE src/app/test/test.component.spec.ts (612 bytes)
CREATE src/app/test/test.component.ts (264 bytes)     
CREATE src/app/test/test.component.scss (0 bytes)     
UPDATE src/app/app-routing.module.ts (2271 bytes)

在示例二基础上:

  1. 添加test.component.htmltest.component.spec.tstest.component.tstest.component.scss文件,用于指定懒加载模块的第一个组件
  2. 更新-m指定的路由模块文件app-routing.module.ts

app-routing.module.ts更新内容:

const routes: Routes = [
  //其他路由路径
  { path: 'mytest', loadChildren: () => import('./test/test.module').then(m => m.TestModule) },
];

其中path为命令中参数--route的值,即懒加载路径。

四、指定懒加载模块文件

有些情况下,路由文件的命名不是按angular-cli指定,如我们把app-routing.module.ts改为routes.ts,那么执行以上命令就会报错:

Cannot read property 'properties' of undefined

解决办法,就是-m参数直接为懒加载挂载路由所在文件。执行命令改为:

ng g m test --routing --route=mytest -m routes.ts

注意:-m的文件路径是执行命令所在目录的相对路径。

版权声明:著作权归作者所有。

期待春哥的佳作
做得好在再接再厉,春哥,加油
相关推荐

理解Java 9的open module(公开模块)

模块化是Java 9新增的一个很重要且影响代码结构的特性。分类根据外部代码在编译时和运行时对模块的访问权限不同分为:常规模块(normal module)和公开模块(open module)。编译时访问比较容易理解,即代码能否显式直接使用模块里的类型,没有权限访问,编译时报错。在运行时访问模块代码是指使用Java里的Core Reflection 

撤回Angular CLI执行的ng eject

使用angular cli执行ng eject后,就不允许执行ng server或ng build。执行ng server 或ng build会报一下错误:An ejected project cannot use the build command 

Angular CLI:配置webpack热模块替换hmr(Hot Module Replacement)

热模块替换(Hot Module Replacement)是Webpack的特性,它可以让我们在调试时不需要重新构建就可以更新代码到正在运行的应用。Angular CLI需要做一些设置就可以使用webpack的热模块替换功能。添加依赖hrm依赖于@angularclass/hmr,安装@angularclass/hmr到dev-dependency$ npm

Java创建文件的常用方法

Java创建文件有几种常用的方法File.createNewFile()创建空白文件java.io.File类里的方法createNewFile()可以用来创建文件。createNewFile()新建的是空文件。创建文件首先要使用File类构建将要被创建的文件,然后再调用createNewFile()把新文件创建出来。createNewFile()的结果分为三种情况:新文件创建成功返回true。如

useradd命令:新建用户

说明useradd命令有两个功能:新建用户以及修改新建用户的默认值。新建用户useradd命令如果没有-D选项,它会使用命令行指定的值加上系统的默认值来新建用户。它根据命令的选项可能会做:新建用户的主目录(一般建在/home/目录下,当然你也可以指定home目录的路径)给新用户创建一个组(group)修改新建用户的默认值useradd命令如果只使用了-D选项,那么它用来显示系统用于新建用户的默认值

Python使用os.fork()创建子进程

导入os模块首先要导入os模块,如下:import os使用os.fork()创建进程使用fork创建一个新的进程后,新进程是原进程的子进程,原进程为父进程。如果发生错误,则会抛出OSError异常。-*- coding: utf-8 -*-import timeimport ostry: pid = os.fork()except OSError: passtime.sleep(20)

NodeJs的path模块

以下为NodeJS path模块相关的函数: path.normalize(路径) 规范化路径 path.join(path1,path2,path3,path4....) 用于连接路径,该方法会正确使用系统路径分隔符 path.reslove([from...],to) 将to参数解析为绝对路径,给定的路径的序列是从右向左被处理的,后面的path依次解析,直到构建出一个完成的path路径