File tree Expand file tree Collapse file tree 1 file changed +18
-8
lines changed Expand file tree Collapse file tree 1 file changed +18
-8
lines changed Original file line number Diff line number Diff line change @@ -222,7 +222,7 @@ module.exports = function (content) {
222222 var hasScoped = parts . styles . some ( function ( s ) { return s . scoped } )
223223
224224 // css modules
225- var cssModules = { }
225+ var cssModules
226226
227227 // add requires for styles
228228 if ( parts . styles . length ) {
@@ -237,6 +237,9 @@ module.exports = function (content) {
237237 var moduleName = ( style . module === true ) ? '$style' : style . module
238238 // setCssModule
239239 if ( moduleName ) {
240+ if ( ! cssModules ) {
241+ cssModules = { }
242+ }
240243 if ( ! hasModules ) {
241244 hasModules = true
242245 output += 'var cssModules = {}\n'
@@ -334,7 +337,7 @@ module.exports = function (content) {
334337
335338 // cssModules
336339 output += ' /* cssModules */\n '
337- if ( Object . keys ( cssModules ) . length ) {
340+ if ( cssModules ) {
338341 // inject style modules as computed properties
339342 output += 'cssModules'
340343 } else {
@@ -384,18 +387,25 @@ module.exports = function (content) {
384387 ' if (!module.hot.data) {\n' +
385388 // initial insert
386389 ' hotAPI.createRecord("' + moduleId + '", Component.options)\n' +
387- ' } else {\n' +
388- // update
390+ ' } else {\n'
391+ // update
392+ if ( cssModules ) {
393+ output +=
389394 ' if (module.hot.data.cssModules && JSON.stringify(module.hot.data.cssModules) !== JSON.stringify(cssModules)) {\n' +
390395 ' delete Component.options._Ctor\n' +
391- ' }\n' +
396+ ' }\n'
397+ }
398+ output +=
392399 ' hotAPI.reload("' + moduleId + '", Component.options)\n' +
393- ' }\n' +
400+ ' }\n'
401+ if ( cssModules ) {
394402 // save cssModules
403+ output +=
395404 ' module.hot.dispose(function (data) {\n' +
396405 ' data.cssModules = cssModules\n' +
397- ' })\n' +
398- '})()}\n'
406+ ' })\n'
407+ }
408+ output += '})()}\n'
399409 }
400410 // final export
401411 if ( options . esModule ) {
You can’t perform that action at this time.
0 commit comments