diff --git a/src/client/updateClientMetaInfo.js b/src/client/updateClientMetaInfo.js index 65976bba..c7ab4ac3 100644 --- a/src/client/updateClientMetaInfo.js +++ b/src/client/updateClientMetaInfo.js @@ -26,8 +26,13 @@ export default function _updateClientMetaInfo (options = {}) { break // update attributes case 'htmlAttrs': + updateTagAttributes(options)(newInfo[key], htmlTag) + break case 'bodyAttrs': - updateTagAttributes(options)(newInfo[key], key === 'htmlAttrs' ? htmlTag : document.getElementsByTagName('body')[0]) + updateTagAttributes(options)(newInfo[key], document.getElementsByTagName('body')[0]) + break + case 'headAttrs': + updateTagAttributes(options)(newInfo[key], document.getElementsByTagName('head')[0]) break // ignore these case 'titleChunk': diff --git a/src/server/generateServerInjector.js b/src/server/generateServerInjector.js index fdcac7cd..d6de34db 100644 --- a/src/server/generateServerInjector.js +++ b/src/server/generateServerInjector.js @@ -16,6 +16,7 @@ export default function _generateServerInjector (options = {}) { return titleGenerator(options)(type, data) case 'htmlAttrs': case 'bodyAttrs': + case 'headAttrs': return attrsGenerator(options)(type, data) default: return tagGenerator(options)(type, data) diff --git a/src/server/generators/attrsGenerator.js b/src/server/generators/attrsGenerator.js index e6bb97eb..2b796a50 100644 --- a/src/server/generators/attrsGenerator.js +++ b/src/server/generators/attrsGenerator.js @@ -4,7 +4,7 @@ export default function _attrsGenerator (options = {}) { /** * Generates tag attributes for use on the server. * - * @param {('bodyAttrs'|'htmlAttrs')} type - the type of attributes to generate + * @param {('bodyAttrs'|'htmlAttrs'|'headAttrs')} type - the type of attributes to generate * @param {Object} data - the attributes to generate * @return {Object} - the attribute generator */ diff --git a/src/shared/getMetaInfo.js b/src/shared/getMetaInfo.js index 81eaafe9..284b7031 100644 --- a/src/shared/getMetaInfo.js +++ b/src/shared/getMetaInfo.js @@ -36,6 +36,7 @@ export default function _getMetaInfo (options = {}) { titleTemplate: '%s', htmlAttrs: {}, bodyAttrs: {}, + headAttrs: {}, meta: [], base: [], link: [],