ohayolibs
Version:
Ohayo is a set of essential modules for ohayojp.
72 lines (46 loc) • 2.74 kB
Markdown
---
order: 10
title:
en-US: New Page
zh-CN: 新增页面
type: Dev
---
Angular 虽然是以组件树来渲染一个页面,然后实际开发是以一种模块树来组织代码,使其能更好地**代码复用**。而对于**模块粒度**取决于需求,ohayojp的定位在于中台前端,因此,比较建议从业务角度出发组织你的代码结构。
ohayojp 提供一套非常丰富的 Schematics 模板,可以快速创建符合 ohayojp 特点的模板和页面;同时包含多种可插拔[插件](/cli/plugin)。
> 另:ohayojp 是一个标准的 Angular CLI 项目,你依然可以使用默认的所有命令行。
## 一、模块
要创建一个页面需要先创建一个模块开始,假如需要一个系统设置相关的模块,执行命令:
```bash
ng g ohayojp:module sys
```
CLI 会自动在 `src/app/routes/sys` 下创建 `sys.module.ts` 和 `sys-routing.module.ts` 文件,前者是系统设置模块组件定义文件;后者是系统设置模块路由配置文件。当然为了使模块跟主模块产生联系,还需要至 `src/app/routes/routes-routing.module.ts` 文件内注册新建的业务模块:
```ts
{
path: '',
component: LayoutDefaultComponent,
children: [
{ path: 'sys', loadChildren: () => import('./sys/sys.module').then(m => m.SysModule) }
]
}
```
这样,你可以放心在 `sys` 目录中开始开发像菜单管理、日志、系统配置等业务页面。
## 二、页面
利用 `ng generate`(可简写为:`ng g`) 命令在 `sys` 目录下创建一个日志列表页:
```bash
ng g ohayojp:list log -m=sys
```
> 了解更多请参考[命令行工具](/cli)。
最终,你可以访问 [日志](//localhost:4200/#/sys/log) 页面。
当然日志可能是一个非常丰富的信息,可以增加一个以模态框打开的查看页来显示更多详情。
```bash
ng g ohayojp:view view -m=sys -t=log
```
`-t=log` 表示希望把创建的文件放进至 `sys/log/view` 下面。
## 三、IDE
除了 ohayojp 提供的 cli 命令行以外,推荐使用 [Visual Studio Code](https://code.visualstudio.com/) IDE,因为 ohayojp 针对 VSCode 增加一些额外的特性,可以更好的帮助你开发。
> 或者直接使用 [ohayojp Extension Pack](https://marketplace.visualstudio.com/items?itemName=cipchk.ohayojp-extension-pack) 套件。
### 代码片断
- [ohayojp Snippets](https://marketplace.visualstudio.com/items?itemName=cipchk.ohayojp-vscode)
### Class样式智能提醒
ohayojp 内置了大量的工具集样式([API](/theme/tools)),安装以下插件可以直接在HTML模板里直接访问到它们。
- [ohayojp Snippets](https://marketplace.visualstudio.com/items?itemName=cipchk.ohayojp-vscode)