热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

angular6+ngzorro鹿途后台管理系统(二)项目结构规划

上一节我们已经搭建好项目的基本骨架,现在我们就来对项目的整体结构进行规划,项目结构规划每个人每个公司都有不同的方式,我们不去论好坏还是是否合理,只要你当前觉得它是最好的实现就好,不

 

上一节我们已经搭建好项目的基本骨架,现在我们就来对项目的整体结构进行规划,项目结构规划每个人每个公司都有不同的方式,我们不去论好坏还是是否合理,只要你当前觉得它是最好的实现就好,不过我还是建议去参考优秀项目的规划方式。

项目结构设计总原则:一切皆模块,鹿途项目的模块主要以功能划分,每个完整的功能点就是一个独立的模块,有自己独立的路由服务等,然后我们在把构建完成的子模块注入到主模块,如果不需要这个模块的功能,直接从主模块里把它移除,需要什么新功能就新开一个模块然后在注入到主模块。

我们先分析app目录下结构的规划:app目录下包含core、layout、routes、shared、styles五个部分;这五部门除styles以为都是以模块的方式呈现,生成模块的快捷命令是

ng g m ./ModuleName

如:ng g m ./core

下面我们来讨论每个模块的细节设计与此模块在项目中的职责描述:

core模块是项目中的一个公共资源池负责向其它模块提供帮助,给其它模块带来便利,鹿途项目会把二次封装的NG-ZORRO组件,项目通用的服务,管道,通用验证,以及一些公用方法存放在此模块中,至于模块里的内容如何存放就因人而异,我建议以功能类型划分放在不同的文件夹下。

layout模块是项目中的模版提供商,整个后台管理系统存在多种不同的呈现方式,鹿途系统主体是以上部的导航左边的菜单栏以及底部的版权栏的方式进行呈现,鹿途系统的登录部分又是以另一种截然不同的方式呈现,而后期的地图部分可能又会以区别于前两种形式风格进行呈现,以上呈现的方式对于项目来说就是不同的模版,我们的设计目标一直秉承着能省就省,于是就诞生了layout模块,layout模块下会存在多种不同风格的模版,项目中的所有呈现方式都由它提供。

routes模块是项目中的功能***也是项目的核心,它是项目中的所有模块的一个集中实现的场所,其它模块都是为它服务,我们将在这个模块下进行业务场景的复现和功能的开发。

shared模块是项目中的采购分发中心,它主要是负责将一些公共资源进行引入,然后再从统一的出口分发到项目中的其它部分。

styles模块是项目中的公共美容室,职责就不赘述了。

 

 

 

 

 

项目github地址:https://github.com/ZhouRenYou/ng-deerway
项目预览地址(非实时更新):https://zhourenyou.github.io/web-deerway/passport/login

 


推荐阅读
  • 浅解XXE与Portswigger Web Sec
    XXE与PortswiggerWebSec​相关链接:​博客园​安全脉搏​FreeBuf​XML的全称为XML外部实体注入,在学习的过程中发现有回显的XXE并不多,而 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • 20211101CleverTap参与度和分析工具功能平台学习/实践
    1.应用场景主要用于学习CleverTap的使用,该平台主要用于客户保留与参与平台.为客户提供价值.这里接触到的原因,是目前公司用到该平台的服务~2.学习操作 ... [详细]
  • 关于我们EMQ是一家全球领先的开源物联网基础设施软件供应商,服务新产业周期的IoT&5G、边缘计算与云计算市场,交付全球领先的开源物联网消息服务器和流处理数据 ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • FeatureRequestIsyourfeaturerequestrelatedtoaproblem?Please ... [详细]
  • r2dbc配置多数据源
    R2dbc配置多数据源问题根据官网配置r2dbc连接mysql多数据源所遇到的问题pom配置可以参考官网,不过我这样配置会报错我并没有这样配置将以下内容添加到pom.xml文件d ... [详细]
  • 本文介绍了在go语言中利用(*interface{})(nil)传递参数类型的原理及应用。通过分析Martini框架中的injector类型的声明,解释了values映射表的作用以及parent Injector的含义。同时,讨论了该技术在实际开发中的应用场景。 ... [详细]
  • Spring框架《一》简介
    Spring框架《一》1.Spring概述1.1简介1.2Spring模板二、IOC容器和Bean1.IOC和DI简介2.三种通过类型获取bean3.给bean的属性赋值3.1依赖 ... [详细]
  • Shodan简单用法Shodan简介Shodan是互联网上最可怕的搜索引擎,与谷歌不同的是,Shodan不是在网上搜索网址,而是直接进入互联网的背后通道。Shodan可以说是一款“ ... [详细]
  • 一、Struts2是一个基于MVC设计模式的Web应用框架在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts2优点1、实现 ... [详细]
author-avatar
1074017584_789ded
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有