路线效率

时间:2016-08-18 03:12:18

标签: node.js express

在我的制作应用中,我在每个路由处理程序中使用require语句。我想知道我是否会受到性能影响?

现在如何运作:

app.get('/', require('../templates/views/home'))
app.get('/foo', require('../templates/views/foo'))
app.get('/bar', require('../templates/views/bar'))

它如何在下一个版本中运行:

var views = require('../templates/views')

app.get('/home', views.home)
app.get('/foo', views.foo)
app.get('/bar', views.bar)

显然/templates/views.js会在应用程序启动时使用require语句导出所有视图,但仅导出

它甚至有所作为吗?

1 个答案:

答案 0 :(得分:0)

从性能角度来看没有区别,但在整个代码中需要使用poor style,因为它很难识别依赖关系。

此外,在代码中使用require会使转换到ES6 imports变得更加困难,因为它们不会评估为内联表达式。

// JS
var views = require('../templates/views')

app.get('/home', views.home)
app.get('/foo', views.foo)
app.get('/bar', views.bar)

// ES6
import views from '../templates/views';

app.get('/home', views.home)
app.get('/foo', views.foo)
app.get('/bar', views.bar)

// This won't work...
app.get('/home', import 'home' from '../template/views/home');