以meanjs0.4.2为例
-
module
- 包含各个模块的源代码。 config
- 包含配置文件。 node_modules
- 包含 package.json 中指定的服务器端模块。 public
- 包含客户端源代码 ,包括 lib 目录(含有在 bower.json 中指定的客户端库)
我们应关注 module 和 public 目录,首先从 module目录中查找应用程序主页的源代码。
modules\core\server\routes\core.server.routes.js 文件(Express 框架的一部分)包含应用程序的关键进入点
'use strict'; module.exports = function (app) { // Root routing var core = require('../controllers/core.server.controller'); // Define error pages app.route('/server-error').get(core.renderServerError); // Return a 404 for all undefined api, module or lib routes app.route('/:url(api|modules|lib)/*').get(core.renderNotFound); // Define application route app.route('/*').get(core.renderIndex); };该路由器定义了一个单一的路径(
/
),由核心控制器的 renderIndex
函数处理。注意,核心控制器是一个 CommonJS 模块,类型为require
。
接下来,查看\modules\core\server\controllers\core.server.controller.js(Express 框架的一部分)
exports.renderIndex = function (req, res) { res.render('modules/core/server/views/index', { user: req.user || null }); };
发送页面modules\core\server\views\index.server.view.html
{% extends 'layout.server.view.html' %} {% block content %} <section ui-view></section> {% endblock %}呈现页面!!