@@ -116,11 +116,29 @@ export class NodeApp extends App {
116116 }
117117 return super . match ( req , opts ) ;
118118 }
119- render ( req : NodeIncomingMessage | Request , routeData ?: RouteData , locals ?: object ) {
119+ render ( request : NodeIncomingMessage | Request , options ?: { routeData ?: RouteData , locals ?: object } ) : Promise < Response >
120+ render ( request : NodeIncomingMessage | Request , routeData ?: RouteData , locals ?: object ) : Promise < Response >
121+ render ( req : NodeIncomingMessage | Request ) {
122+ let routeData : RouteData | undefined ;
123+ let locals : object | undefined ;
124+
125+ if ( arguments . length === 3 ) {
126+ routeData = arguments [ 1 ] ;
127+ locals = arguments [ 2 ] ;
128+ }
129+ else if ( arguments . length === 2 ) {
130+ const options = arguments [ 1 ] ;
131+ if ( options && 'routeData' in options ) {
132+ routeData = options . routeData ;
133+ }
134+ if ( options && 'locals' in options ) {
135+ locals = options . locals ;
136+ }
137+ }
120138 if ( ! ( req instanceof Request ) ) {
121139 req = createRequestFromNodeRequest ( req ) ;
122140 }
123- return super . render ( req , routeData , locals ) ;
141+ return super . render ( req , { routeData, locals } ) ;
124142 }
125143}
126144
0 commit comments