Angular CLI生成组件修改文件名报错:未知参数type
在Angular CLI中生成带.page后缀的组件文件
直接生成目标格式的组件
不用纠结已废弃的--type参数,用以下两种方式直接生成符合要求的文件:
方式一:直接指定带.page后缀的组件名
执行这条命令:ng g c my-component-name.page会自动生成以下文件:
my-component-name.page.tsmy-component-name.page.htmlmy-component-name.page.scss(取决于你的CLI样式配置)my-component-name.page.spec.ts
组件类名会自动生成为MyComponentNamePageComponent,selector默认是app-my-component-name-page,需要自定义selector的话可以追加--selector参数。
方式二:用--filename参数显式指定文件名
如果希望保持组件逻辑名称和文件名分离,用这条命令:ng g c my-component-name --filename my-component-name.page生成的文件名和方式一一致,但组件类名仍为
MyComponentNameComponent。
全局配置默认生成.page后缀组件(可选)
如果需要频繁生成这类组件,可以修改angular.json的schematics配置,让CLI默认输出带.page后缀的文件:
找到项目配置下的schematics -> @schematics/angular:component,添加filename字段:
"projects": { "your-project-name": { // ...其他配置 "schematics": { "@schematics/angular:component": { "style": "scss", "filename": "{{name}}.page" } } } }
之后直接执行ng g c my-component-name就会自动生成带.page后缀的文件。
为什么--type参数会报错
Angular CLI在较新版本中已经移除了--type参数,这个参数是旧版本用来定义组件类型的,当前版本不再支持,因此会抛出Error: Unknown argument: type的错误,改用上述方法即可解决。
内容的提问来源于stack exchange,提问作者Pedro Couto
相关产品推荐
相关产品推荐

