diff --git a/midware_x.go b/midware_x.go index 770273a..65d97d6 100644 --- a/midware_x.go +++ b/midware_x.go @@ -64,9 +64,13 @@ func (engine *Engine) UseIf(condition bool, middlewareX MiddlewareXFunc) Handler // 如果中间件是无状态的,可以进行优化 // 优化:只创建一次 - middleware := middlewareX() return func(c *Context) { - middleware(c) + middleware := middlewareX() + if middleware != nil { + middleware(c) + } else { + c.Next() + } } }