@@ -132,21 +132,21 @@ export async function renderPage(
132132 }
133133
134134 rendererCache . headElements . forEach ( ( { type, props } ) => {
135+ const { children, ...rest } = props
135136 if ( type === 'title' ) {
136- if ( util . isNEString ( props . children ) ) {
137- ret . head . push ( `<title ssr>${ props . children } </title>` )
138- } else if ( util . isNEArray ( props . children ) ) {
139- ret . head . push ( `<title ssr>${ props . children . join ( '' ) } </title>` )
137+ if ( util . isNEString ( children ) ) {
138+ ret . head . push ( `<title ssr>${ children } </title>` )
139+ } else if ( util . isNEArray ( children ) ) {
140+ ret . head . push ( `<title ssr>${ children . join ( '' ) } </title>` )
140141 }
141142 } else {
142- const attrs = Object . keys ( props )
143- . filter ( key => key !== 'children' )
144- . map ( key => ` ${ key } =${ JSON . stringify ( props [ key ] ) } ` )
145- . join ( '' )
146- if ( util . isNEString ( props . children ) ) {
147- ret . head . push ( `<${ type } ${ attrs } ssr>${ props . children } </${ type } >` )
148- } else if ( util . isNEArray ( props . children ) ) {
149- ret . head . push ( `<${ type } ${ attrs } ssr>${ props . children . join ( '' ) } </${ type } >` )
143+ const attrs = Object . entries ( rest ) . map ( ( [ key , value ] ) => ` ${ key } =${ JSON . stringify ( value ) } ` ) . join ( '' )
144+ if ( type === 'script' ) {
145+ ret . head . push ( `<${ type } ${ attrs } >${ Array . isArray ( children ) ? children . join ( '' ) : children || '' } </${ type } >` )
146+ } else if ( util . isNEString ( children ) ) {
147+ ret . head . push ( `<${ type } ${ attrs } ssr>${ children } </${ type } >` )
148+ } else if ( util . isNEArray ( children ) ) {
149+ ret . head . push ( `<${ type } ${ attrs } ssr>${ children . join ( '' ) } </${ type } >` )
150150 } else {
151151 ret . head . push ( `<${ type } ${ attrs } ssr />` )
152152 }
0 commit comments