-
Notifications
You must be signed in to change notification settings - Fork 7
03 module
冯世昌 edited this page Apr 23, 2019
·
2 revisions
Suda的基本功能都是通过模块实现的,一个基本的模块包括了如下几个部分,分别控制了基本的预定义功能:
-
resource
模块的资源-
config
-
route*
路由信息
-
-
locale
语言I18N -
template
模板
-
-
share
模块的共享代码 -
src
模块的私有代码 -
module.json
模块配置文件
模块的目录由 manifast.json
文件可以指定配置模块存放的目录,不仅限于一个目录,默认的模块目录为 modules
,模块的启用由 modules
下面的 config.json
控制是否启用,模块的状态有四种
-
default
- 模块不加载 -
loaded
- 模块加载到系统中,能够使用模块的资源和共享代码 -
reachable
- 模块开放访问请求,能够使用模块的资源和共享代码 -
active
- 模块的路由被访问的时候可以使用私有代码
下面以Demo的模块做解释
目录: Demo的程序包含了一个模块 suda/welcome
,目录位置为 app/modules/welcome
配置: modules
文件夹下的模块启用配置为如下
app/modules/config.json
{
"loaded": [
"welcome"
],
"reachable": [
"welcome"
]
}
即,加载并使模块可以访问,如果模块目录文件夹下没有配置文件,默认全部启用。
模块的资源在Suda系统中使用特殊的资源标识符访问,具体说明如下:
[namespace/]module-name[:version][@group]:
资源基本由此指定,如:
-
welcome:1.0:simple
- 使用welcome
模块1.0
版本的资源simple
suda 会尝试将不全的资源复原为完整的资源再引用 -
index
根据环境自动推导所在模块以及版本等信息
- Suda Nebula Framework