ng new 不会在 src 根文件夹中生成 app.module.ts
需要使用 --no--standalone 来生成app.module.ts
使用以下命令生成具有 app.module.ts 和 app-routing.module.ts 的项目:
ng new my-app --no-standalone --routing --ssr=false
ng new是Angular CLI的命令,用于创建一个全新的Angular应用。
my-app是你给这个新应用指定的名字。
--routing这个选项告诉Angular CLI在项目中包含一个路由模块。路由模块用于定义视图之间的导航路径,这对于构建单页应用(SPA)是非常重要的。通过这个选项,CLI会自动生成一个基础的路由配置,通常是AppRoutingModule。
--no-standalone解决没有app.module.ts的问题
--ssr=false: SSR代表服务器端渲染。这个选项明确指出不启用Angular Universal,后者是一个常用于服务器端渲染的Angular应用,以改善首次加载时间和搜索引擎优化(SEO)。--ssr=false表示项目初始化时,你选择不配置服务器端渲染。
1. 如果你想要继续使用模块化的方式构建你的Angular应用,可以通过运行
ng new my-app --no-standalone --routing --ssr=false
命令来创建一个新的项目,这将会生成包含 app.module.ts和app-routing.module.ts的项目结构。
解释:
从Angular CLI版本17.0.0开始,Angular应用的创建方式发生了变化。现在,使用Angular CLI创建新项目时,默认生成的是独立应用,这意味着不再自动创建`app.module.ts`文件,除非明确使用`--no-standalone`选项。这是一个重要的变化,因为`app.module.ts`是Angular项目中的核心文件,用于定义根模块,告诉Angular如何组装应用。
这一变化的原因是为了推动Angular应用开发的现代化,其中独立组件(standalone components)允许开发者以更灵活的方式构建和组织应用。独立组件意味着每个组件都能独立存在,不必依赖于Angular模块(NgModules),从而简化了开发流程并减少了应用的初始加载时间。