File tree Expand file tree Collapse file tree 1 file changed +13
-2
lines changed
src/server/template-renderer Expand file tree Collapse file tree 1 file changed +13
-2
lines changed Original file line number Diff line number Diff line change @@ -66,6 +66,8 @@ export default class TemplateRenderer {
66
66
; [ 'ResourceHints' , 'State' , 'Scripts' , 'Styles' ] . forEach ( type => {
67
67
context [ `render${ type } ` ] = renderer [ `render${ type } ` ] . bind ( renderer , context )
68
68
} )
69
+ // also expose getPreloadFiles, useful for HTTP/2 push
70
+ context . getPreloadFiles = renderer . getPreloadFiles . bind ( renderer , context )
69
71
}
70
72
71
73
// render synchronously given rendered app content and render context
@@ -116,10 +118,19 @@ export default class TemplateRenderer {
116
118
return this . renderPreloadLinks ( context ) + this . renderPrefetchLinks ( context )
117
119
}
118
120
119
- renderPreloadLinks ( context : Object ) : string {
121
+ getPreloadFiles ( context : Object ) {
120
122
const usedAsyncFiles = this . getUsedAsyncFiles ( context )
121
123
if ( this . preloadFiles || usedAsyncFiles ) {
122
- return ( this . preloadFiles || [ ] ) . concat ( usedAsyncFiles || [ ] ) . map ( file => {
124
+ return ( this . preloadFiles || [ ] ) . concat ( usedAsyncFiles || [ ] )
125
+ } else {
126
+ return [ ]
127
+ }
128
+ }
129
+
130
+ renderPreloadLinks ( context : Object ) : string {
131
+ const files = this . getPreloadFiles ( context )
132
+ if ( files . length ) {
133
+ return files . map ( file => {
123
134
let extra = ''
124
135
const withoutQuery = file . replace ( / \? .* / , '' )
125
136
const ext = path . extname ( withoutQuery ) . slice ( 1 )
You can’t perform that action at this time.
0 commit comments