diff --git a/src/vueTransform.js b/src/vueTransform.js index d32577e..83aa331 100644 --- a/src/vueTransform.js +++ b/src/vueTransform.js @@ -238,7 +238,7 @@ export default async function vueTransform (code, id, options) { const style = css.map(s => '$compiled' in s ? s.$compiled.code : s.code).join('\n').replace(/(\r?\n|[\s])+/g, ' ') const styleCode = ` (function(){ - if(document){ + if(typeof document !== 'undefined'){ var head=document.head||document.getElementsByTagName('head')[0], style=document.createElement('style'), css=${JSON.stringify(style)}; diff --git a/test/expects/no-css-extract.js b/test/expects/no-css-extract.js index 37fa25d..bb61d21 100644 --- a/test/expects/no-css-extract.js +++ b/test/expects/no-css-extract.js @@ -1,4 +1,4 @@ -(function(){ if(document){ var head=document.head||document.getElementsByTagName('head')[0], style=document.createElement('style'), css=".baz { color: #008000; } .bar { color: blue } .foo { color: red; } "; style.type='text/css'; if (style.styleSheet){ style.styleSheet.cssText = css; } else { style.appendChild(document.createTextNode(css)); } head.appendChild(style); } })(); +(function(){ if(typeof document !== 'undefined'){ var head=document.head||document.getElementsByTagName('head')[0], style=document.createElement('style'), css=".baz { color: #008000; } .bar { color: blue } .foo { color: red; } "; style.type='text/css'; if (style.styleSheet){ style.styleSheet.cssText = css; } else { style.appendChild(document.createTextNode(css)); } head.appendChild(style); } })();