模块的注册

  • 使用 require(packageName) 注册模块;

    var path = require('path');, 注册 path 核心模块;

    var express = require('express');, 注册 ‘express’ 核心模块;

    var routes = require('./routes/index');, 注册用户自定义的模块 index.js

    一个点 ( . ) 代表是当前目录, ( ./routes/index ) 意为与当前文件同目录的 routes 目录内的 ‘index.js’文件;

  • __dirname获取当前文件的路径

    app.use(express.static(path.join(__dirname, 'public')));, 设置静态目录为当前文件同目录的 public 目录;

    然后,就可以直接通过 / 来访问 public 目录内的子目录咯;

    <link rel="stylesheet" href="/stylesheets/style.css" />

      var express = require('express');
      var path = require('path');
    
      var app = express();
    
      app.set('views', path.join(__dirname, 'views'));
      ......
    
      app.use(express.static(path.join(__dirname, 'public')));
    

URL设置

一个实例:

//app.js
var reg_router = require('./routers/reg'); 注册用户自定义的 reg 模块
......

app.use('/', reg_router); 设置 reg 模块内所有的链接为根目录

//./routers/reg.js
var express = require('express');
var router = express.Router();

router.get('/reg_home', function(req, res) {
    res.render('reg_ejs', { title: 'Jay.Reg' }); 加载并解析 ejs
});

module.exports = router;

//./views/reg_ejs.ejs, 内容省略......

启动服务:npm start

浏览器输入:http://localhost:3000/reg_home,这样就能查看我们的网页咯;

重点说明

app.use('/'), reg_router);, 这里的 ‘/‘ 是自定义的,还可以在 ‘/‘ 后跟一些数字、字母、下划线等;

router.get('/reg_home', function...), 这里的 ‘reg_home’ 也是自定义的;

这样就构成了我们的页面 url = /reg_home