2.0.6 • Published 7 years ago

express-route-auto v2.0.6

Weekly downloads
1
License
MIT
Repository
github
Last release
7 years ago

Build Status npm npm

express-route-auto

用于express路由的自动加载

初步想法是为了便于 后端服务的开发

推荐用Typescript

install

npm install express-route-auto --save

setup

import  * as express from "express";
import * as util from "util";
import { Generate } from "express-route-auto";


const port = 3000;


let app = express();

app.get('/123/', (req, res, next) => {
  next()
})

let generate = new Generate({
  // routeDir 是必须的, 是controller的文件地址(相对于根目录))
  routeDir: 'controller',
  // APP_PATH 也是必须的,是模块获取到根目录路径
  APP_PATH: __dirname,
  /**
  * 为里每一个Controller增加props 挂载到this上, 比如数据库的Model -> this.User.add(...)
  * props: {
  *   User: Model.User
  * }
  */
  props: {
    Name: 'looading'
  }
});
// let routes = generate()
app.use(generate.init());

app.listen(port, () => {
  console.info(`server is running on port: ${port}`);
})

Controller

import { Action } from "express-route-auto";

class Index extends Action {
  params = {
    get: ['id']
  }
  constructor() {
    super();
  }
  post = (req, res, next) => {
    res.send('this is / ::post!');
  }
	get = (req, res, next) => {
    let { id } = req.params
		res.json({
      id,
      context: 'this is / ::get!'
    });
	}
  delete = (req, res, next) => {
    res.send('this is delete')
  }
}

module.exports = new Index();

路由目录结构

- controller
	- user				
		- index.js		=>	/user/
		- show.js			=> /user/show
    - info        // 空目录不会成为路由
    — detail
      - index.js  => /user/detail
	- index.js			=> /

continue

按照上述的配置基本就能跑起来了 详细的可以查看demo文件里的代码 由于是基于自己项目的,目前还没有扩展开来。

feature

...

2.0.6

7 years ago

2.0.5

7 years ago

2.0.4

7 years ago

2.0.3

7 years ago

2.0.2

7 years ago

2.0.1

7 years ago

2.0.0

7 years ago

1.2.3

7 years ago

1.2.2

7 years ago

1.2.1

7 years ago

1.2.0

7 years ago

1.1.4

7 years ago

1.1.3

7 years ago

1.1.2

7 years ago

1.1.1

7 years ago

1.1.0

7 years ago

1.0.7-alpha.1

8 years ago

1.0.7-alpha

8 years ago

1.0.7-pre

8 years ago

1.0.6-pro

8 years ago

1.0.6-test

8 years ago

1.0.6

8 years ago

1.0.5-after

8 years ago

1.0.5-test

8 years ago

1.0.5-pre

8 years ago

1.0.5

8 years ago

1.0.4-fixbug

8 years ago

1.0.4-pro

8 years ago

1.0.4-pre

8 years ago

1.0.4

8 years ago

1.0.3

8 years ago

1.0.2

8 years ago

1.0.1

8 years ago

1.0.0

8 years ago