Angular CLI的自定义文件夹结构
在使用Angular CLI设置新的Angular项目时,我遇到了一个挑战 我想创建一个文件夹结构,如下所示:Angular CLI的自定义文件夹结构,angular,angular-cli,Angular,Angular Cli,在使用Angular CLI设置新的Angular项目时,我遇到了一个挑战 我想创建一个文件夹结构,如下所示: -- src -- components -- app -- students -- faculty -- admin -- common -- search -- table -- table_row -- list
-- src
-- components
-- app
-- students
-- faculty
-- admin
-- common
-- search
-- table
-- table_row
-- list
-- list_item
-- header
-- footer
-- side_panel
-- services
-- static
-- jsons
-- cities
-- states
-- time_zones
-- imgs
-- scss
如果我们运行ngccsomecomponent
命令,它只会在src/app/
内部创建新组件
就代码而言,app
本身就是一个组件,那么为什么Angular CLI不允许我们创建另一个与app组件并行的组件呢
但是,如果手动创建文件夹的结构而不使用CLI命令,则是可行的。该应用程序也运行良好
每个应用程序都有自己的大小和功能,并且需要一些特定的代码设计,那么为什么要施加这样的限制呢?有人能帮我理解这种结构的好处吗?我使用了类似的东西:ng g c common\some component如果你需要它会进入\common\目录。只要我能从
@angular/cli
源代码进行调试,src
部分可以在应用程序[]中设置.angular cli.json
配置文件上的.root
属性
然而,app/
部分来自ember cli
蓝图,它似乎是构建应用程序的自以为是的途径
如果将“root”:“
,则ng generate component new
命令将以以下结构创建组件:
-- app
-- new
-- new.component.css
-- new.component.html
-- new.component.spec.ts
-- new.component.ts
编辑:我还没有解决与未使用“预期”结构有关的
ng serve
的一些问题,例如无法解析模块导入等。这里解释了生成内容的默认根路径是src/app,并且是硬编码的(这意味着如果不使用ng cli,就无法更改它,这永远都不是一个好主意)
您可以在
.angular cli.json
中更改Approt选项,以避免创建应用程序文件夹:
"apps": [
{
"appRoot": ".",
"root": "src",
"outDir": "dist",
...
}
]
然后您可以使用ng generate
命令在components文件夹中创建组件:
ng generate component components/common/search
如果您还想跳过创建
src
,则将“root”
设置为“\\”
检查确切路径..您的错误,因为CLI将从根文件夹开始,作为src/app/feature1..
@Aravind,我们可以在angular CLI config中更改根文件夹/文件。我的问题是,如果可以手动创建任何文件夹结构,那么为什么在使用CLI命令时会有限制?@vikrametes正在使用ember cl我
blueprints将所有内容放在app
下面,CLI只添加配置为root
的目录。请尝试更具体地说明如何使用您的解决方案来回答OP的问题。可能还会为该命令添加一些格式!:-)非常感谢。非常有帮助!您知道我们必须如何配置Angular 6“Angular.json”配置吗?非常感谢你!“不允许进行属性批准”:(