I am trying to integrate your webpack template with my Django project. When running the unit test I run into these errors:
WARNING in ./src/sass/abstracts/README.md
Module parse failed: /home/usr/project/src/sass/abstracts/README.md Unexpected character '#' (1:0)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected character '#' (1:0)
WARNING in ./src/images/favicon.ico
Module parse failed: /home/usr/project/src/images/favicon.ico Unexpected character ' ' (1:0)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected character ' ' (1:0)
ERROR in ./~/css-loader!./~/sass-loader!./src/sass/base/_base.scss
Module build failed:
color: $brand-color;
^
Undefined variable: "$brand-color".
in /home/usr/project/src/sass/base/_base.scss (line 26, column 10)
@ ./src/sass/base/_base.scss 4:14-128
ERROR in ./~/css-loader!./~/sass-loader!./src/sass/base/_helpers.scss
Module build failed:
max-width: $max-width; /* 1 */
^
Undefined variable: "$max-width".
in /home/usr/project/src/sass/base/_helpers.scss (line 21, column 14)
@ ./src/sass/base/_helpers.scss 4:14-131
ERROR in ./~/css-loader!./~/sass-loader!./src/sass/base/_typography.scss
Module build failed:
color: $text-color;
^
Undefined variable: "$text-color".
in /home/usr/project/src/sass/base/_typography.scss (line 5, column 10)
@ ./src/sass/base/_typography.scss 4:14-134
14 06 2016 17:08:37.832:INFO [karma]: Karma v0.13.22 server started at http://localhost:9876/
14 06 2016 17:08:37.835:INFO [launcher]: Starting browser PhantomJS
14 06 2016 17:08:38.062:INFO [PhantomJS 2.1.1 (Linux 0.0.0)]: Connected on socket /#VokKZQoCYI-X67hKAAAA with id 84701306
PhantomJS 2.1.1 (Linux 0.0.0) ERROR
Error: Cannot find module "!!./../../../node_modules/css-loader/index.js!./../../../node_modules/sass-loader/index.js!./_/home/usr/project/test/unit.scss"
at /home/usr/project/test/unit/index.js:11056 <- webpack:///src/sass/base/_base.scss:4:0
PhantomJS 2.1.1 (Linux 0.0.0): Executed 0 of 0 ERROR (0.146 secs / 0 secs)
Looks like the sass loader does not work for non vue files...or something. I have found similar issues but these were solved with:
https://github.com/vuejs-templates/webpack/pull/84
Any suggestions how to solve this?
It looks like those are running through sass-loader, because you're getting Undefined variable errors. It just can't find where you've defined that variable. Can you provide a minimal project that demonstrates the problem you're seeing?
You mean to send it to you privately, or how do I provide you with the project?
The full error output below:
/home/usr/.nvm/versions/node/v5.11.1/bin/node /home/usr/.nvm/versions/node/v5.11.1/lib/node_modules/npm/bin/npm-cli.js run-script unit
[email protected] unit /home/usr/myproject
karma start test/unit/karma.conf.js --single-run
14 06 2016 20:08:26.136:WARN [watcher]: Pattern "/home/usr/myproject/node_modules/sinon/pkg/sinon-timers.js" does not match any file.
Hash: 0fe139901933e9ab0ab9
Version: webpack 1.13.1
Time: 3210ms
Asset Size Chunks Chunk Names
index.js 1.04 MB 0 [emitted] index.js
chunk {0} index.js (index.js) 382 kB [rendered]
[0] ./test/unit/index.js 571 bytes {0} [built]
[1] ./~/function-bind/index.js 111 bytes {0} [built]
[2] ./~/function-bind/implementation.js 1.42 kB {0} [built]
[3] ./test/unit/specs .spec$ 177 bytes {0} [built]
[4] ./test/unit/specs/Hello.spec.js 602 bytes {0} [optional] [built]
[5] ./~/vue/dist/vue.common.js 253 kB {0} [built]
[6] ./src/components/Hello.vue 1.38 kB {0} [built]
[7] ./~/vue-style-loader!./~/css-loader!./~/vue-loader/lib/style-rewriter.js?id=_v-7c86ba76&scoped=true!./~/vue-loader/lib/selector.js?type=style&index=0!./src/components/Hello.vue 1.37 kB {0} [built]
[8] ./~/css-loader!./~/vue-loader/lib/style-rewriter.js?id=_v-7c86ba76&scoped=true!./~/vue-loader/lib/selector.js?type=style&index=0!./src/components/Hello.vue 244 bytes {0} [built]
[9] ./~/css-loader/lib/css-base.js 1.51 kB {0} [built]
[10] ./~/vue-style-loader/addStyles.js 6.24 kB {0} [built]
[11] ./~/isparta-loader!./~/vue-loader/lib/selector.js?type=script&index=0!./src/components/Hello.vue 1.89 kB {0} [built]
[12] ./~/vue-html-loader!./~/vue-loader/lib/template-rewriter.js?id=_v-7c86ba76!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/Hello.vue 109 bytes {0} [built]
[13] ./src ^.\/(?!main(.js)?$) 1.24 kB {0} [built] [8 warnings]
[14] ./src/App.vue 1.25 kB {0} [optional] [built]
[15] ./~/vue-style-loader!./~/css-loader!./~/vue-loader/lib/style-rewriter.js!./~/vue-loader/lib/selector.js?type=style&index=0!./src/App.vue 1.25 kB {0} [built]
[16] ./~/css-loader!./~/vue-loader/lib/style-rewriter.js!./~/vue-loader/lib/selector.js?type=style&index=0!./src/App.vue 897 bytes {0} [built]
[17] ./~/isparta-loader!./~/vue-loader/lib/selector.js?type=script&index=0!./src/App.vue 4.14 kB {0} [built]
[18] ./~/vue-html-loader!./~/vue-loader/lib/selector.js?type=template&index=0!./src/App.vue 1.02 kB {0} [built]
[19] ./src/assets/logo.png 9.17 kB {0} [built]
[20] ./src/css/custom.css 926 bytes {0} [optional] [built]
[21] ./~/css-loader!./src/css/custom.css 4.02 kB {0} [built]
[22] ./src/ie10-viewport-bug-workaround.js 2.67 kB {0} [optional] [built]
[24] ./src/images/loading.gif 1.17 kB {0} [optional] [built]
[25] ./src/images/profile_default.jpg 23.8 kB {0} [optional] [built]
[26] ./src/img/loading.gif 1.17 kB {0} [optional] [built]
[27] ./src/js/app.vue 1.26 kB {0} [optional] [built]
[28] ./~/vue-style-loader!./~/css-loader!./~/vue-loader/lib/style-rewriter.js!./~/vue-loader/lib/selector.js?type=style&index=0!./src/js/app.vue 1.28 kB {0} [built]
[29] ./~/css-loader!./~/vue-loader/lib/style-rewriter.js!./~/vue-loader/lib/selector.js?type=style&index=0!./src/js/app.vue 201 bytes {0} [built]
[30] ./~/isparta-loader!./~/vue-loader/lib/selector.js?type=script&index=0!./src/js/app.vue 1.93 kB {0} [built]
[31] ./~/vue-html-loader!./~/vue-loader/lib/selector.js?type=template&index=0!./src/js/app.vue 132 bytes {0} [built]
[33] ./src/sass/abstracts/_color-definitions.scss 1.11 kB {0} [optional] [built]
[34] ./~/css-loader!./~/sass-loader!./src/sass/abstracts/_color-definitions.scss 864 bytes {0} [built]
[35] ./src/sass/abstracts/_functions.scss 1.09 kB {0} [optional] [built]
[36] ./~/css-loader!./~/sass-loader!./src/sass/abstracts/_functions.scss 162 bytes {0} [built]
[37] ./src/sass/abstracts/_mixins.scss 1.08 kB {0} [optional] [built]
[38] ./~/css-loader!./~/sass-loader!./src/sass/abstracts/_mixins.scss 162 bytes {0} [built]
[39] ./src/sass/abstracts/_variables.scss 1.09 kB {0} [optional] [built]
[40] ./~/css-loader!./~/sass-loader!./src/sass/abstracts/_variables.scss 162 bytes {0} [built]
[42] ./src/sass/base/_base.scss 1.07 kB {0} [optional] [built] [1 error]
[44] ./src/sass/base/_fonts.scss 1.08 kB {0} [optional] [built]
[45] ./~/css-loader!./~/sass-loader!./src/sass/base/_fonts.scss 162 bytes {0} [built]
[46] ./src/sass/base/_helpers.scss 1.08 kB {0} [optional] [built] [1 error]
[48] ./src/sass/base/_typography.scss 1.09 kB {0} [optional] [built] [1 error]
[51] ./src/sass/components/_speeddialbutton.scss 1.11 kB {0} [optional] [built]
[52] ./~/css-loader!./~/sass-loader!./src/sass/components/_speeddialbutton.scss 2.71 kB {0} [built]
[54] ./src/sass/layout/_footer.scss 1.08 kB {0} [optional] [built]
[55] ./~/css-loader!./~/sass-loader!./src/sass/layout/_footer.scss 162 bytes {0} [built]
[56] ./src/sass/layout/_header.scss 1.08 kB {0} [optional] [built]
[57] ./~/css-loader!./~/sass-loader!./src/sass/layout/_header.scss 162 bytes {0} [built]
[58] ./src/sass/main.scss 1.05 kB {0} [optional] [built]
[59] ./~/css-loader!./~/sass-loader!./src/sass/main.scss 18.4 kB {0} [built]
[61] ./src/sass/pages/_home.scss 1.07 kB {0} [optional] [built]
[62] ./~/css-loader!./~/sass-loader!./src/sass/pages/_home.scss 162 bytes {0} [built]
[64] ./src/sass/themes/_custom.scss 1.08 kB {0} [optional] [built]
[65] ./~/css-loader!./~/sass-loader!./src/sass/themes/_custom.scss 5.17 kB {0} [built]
[66] ./src/sass/themes/_default.scss 1.08 kB {0} [optional] [built]
[67] ./~/css-loader!./~/sass-loader!./src/sass/themes/_default.scss 162 bytes {0} [built]
[68] ./src/sass/themes/_theme.scss 1.08 kB {0} [optional] [built]
[69] ./~/css-loader!./~/sass-loader!./src/sass/themes/_theme.scss 669 bytes {0} [built]
[71] ./src/sass/vendors/_normalize.scss 1.09 kB {0} [optional] [built]
[72] ./~/css-loader!./~/sass-loader!./src/sass/vendors/_normalize.scss 8.22 kB {0} [built]
WARNING in ./src/images/favicon.ico
Module parse failed: /home/usr/myproject/src/images/favicon.ico Unexpected character ' ' (1:0)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected character ' ' (1:0)
at Parser.pp.raise (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:923:13)
at Parser.pp.getTokenFromCode (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2831:8)
at Parser.pp.readToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2526:15)
at Parser.pp.nextToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2518:71)
at Parser.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:1631:10)
at Object.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:885:44)
at Parser.parse (/home/usr/myproject/node_modules/webpack/lib/Parser.js:902:15)
at DependenciesBlock.
at DependenciesBlock.onModuleBuild (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:310:10)
at nextLoader (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:275:25)
at /home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:259:5
at Storage.finished (/home/usr/myproject/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:38:16)
at /home/usr/myproject/node_modules/graceful-fs/graceful-fs.js:78:16
at FSReqWrap.readFileAfterClose as oncomplete
@ ./src ^.\/(?!main(.js)?$)
WARNING in ./src/sass/abstracts/README.md
Module parse failed: /home/usr/myproject/src/sass/abstracts/README.md Unexpected character '#' (1:0)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected character '#' (1:0)
at Parser.pp.raise (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:923:13)
at Parser.pp.getTokenFromCode (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2831:8)
at Parser.pp.readToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2526:15)
at Parser.pp.nextToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2518:71)
at Parser.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:1631:10)
at Object.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:885:44)
at Parser.parse (/home/usr/myproject/node_modules/webpack/lib/Parser.js:902:15)
at DependenciesBlock.
at DependenciesBlock.onModuleBuild (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:310:10)
at nextLoader (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:275:25)
at /home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:259:5
at Storage.finished (/home/usr/myproject/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:38:16)
at /home/usr/myproject/node_modules/graceful-fs/graceful-fs.js:78:16
at FSReqWrap.readFileAfterClose as oncomplete
@ ./src ^.\/(?!main(.js)?$)
WARNING in ./src/sass/components/README.md
Module parse failed: /home/usr/myproject/src/sass/components/README.md Unexpected character '#' (1:0)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected character '#' (1:0)
at Parser.pp.raise (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:923:13)
at Parser.pp.getTokenFromCode (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2831:8)
at Parser.pp.readToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2526:15)
at Parser.pp.nextToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2518:71)
at Parser.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:1631:10)
at Object.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:885:44)
at Parser.parse (/home/usr/myproject/node_modules/webpack/lib/Parser.js:902:15)
at DependenciesBlock.
at DependenciesBlock.onModuleBuild (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:310:10)
at nextLoader (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:275:25)
at /home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:259:5
at Storage.finished (/home/usr/myproject/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:38:16)
at /home/usr/myproject/node_modules/graceful-fs/graceful-fs.js:78:16
at FSReqWrap.readFileAfterClose as oncomplete
@ ./src ^.\/(?!main(.js)?$)
WARNING in ./src/sass/pages/README.md
Module parse failed: /home/usr/myproject/src/sass/pages/README.md Unexpected character '#' (1:0)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected character '#' (1:0)
at Parser.pp.raise (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:923:13)
at Parser.pp.getTokenFromCode (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2831:8)
at Parser.pp.readToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2526:15)
at Parser.pp.nextToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2518:71)
at Parser.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:1631:10)
at Object.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:885:44)
at Parser.parse (/home/usr/myproject/node_modules/webpack/lib/Parser.js:902:15)
at DependenciesBlock.
at DependenciesBlock.onModuleBuild (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:310:10)
at nextLoader (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:275:25)
at /home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:259:5
at Storage.finished (/home/usr/myproject/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:38:16)
at /home/usr/myproject/node_modules/graceful-fs/graceful-fs.js:78:16
at FSReqWrap.readFileAfterClose as oncomplete
@ ./src ^.\/(?!main(.js)?$)
WARNING in ./src/sass/layout/README.md
Module parse failed: /home/usr/myproject/src/sass/layout/README.md Unexpected character '#' (1:0)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected character '#' (1:0)
at Parser.pp.raise (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:923:13)
at Parser.pp.getTokenFromCode (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2831:8)
at Parser.pp.readToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2526:15)
at Parser.pp.nextToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2518:71)
at Parser.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:1631:10)
at Object.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:885:44)
at Parser.parse (/home/usr/myproject/node_modules/webpack/lib/Parser.js:902:15)
at DependenciesBlock.
at DependenciesBlock.onModuleBuild (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:310:10)
at nextLoader (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:275:25)
at /home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:259:5
at Storage.finished (/home/usr/myproject/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:38:16)
at /home/usr/myproject/node_modules/graceful-fs/graceful-fs.js:78:16
at FSReqWrap.readFileAfterClose as oncomplete
@ ./src ^.\/(?!main(.js)?$)
WARNING in ./src/sass/themes/README.md
Module parse failed: /home/usr/myproject/src/sass/themes/README.md Unexpected character '#' (1:0)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected character '#' (1:0)
at Parser.pp.raise (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:923:13)
at Parser.pp.getTokenFromCode (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2831:8)
at Parser.pp.readToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2526:15)
at Parser.pp.nextToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2518:71)
at Parser.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:1631:10)
at Object.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:885:44)
at Parser.parse (/home/usr/myproject/node_modules/webpack/lib/Parser.js:902:15)
at DependenciesBlock.
at DependenciesBlock.onModuleBuild (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:310:10)
at nextLoader (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:275:25)
at /home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:259:5
at Storage.finished (/home/usr/myproject/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:38:16)
at /home/usr/myproject/node_modules/graceful-fs/graceful-fs.js:78:16
at FSReqWrap.readFileAfterClose as oncomplete
@ ./src ^.\/(?!main(.js)?$)
WARNING in ./src/sass/vendors/README.md
Module parse failed: /home/usr/myproject/src/sass/vendors/README.md Unexpected character '#' (1:0)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected character '#' (1:0)
at Parser.pp.raise (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:923:13)
at Parser.pp.getTokenFromCode (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2831:8)
at Parser.pp.readToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2526:15)
at Parser.pp.nextToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2518:71)
at Parser.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:1631:10)
at Object.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:885:44)
at Parser.parse (/home/usr/myproject/node_modules/webpack/lib/Parser.js:902:15)
at DependenciesBlock.
at DependenciesBlock.onModuleBuild (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:310:10)
at nextLoader (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:275:25)
at /home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:259:5
at Storage.finished (/home/usr/myproject/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:38:16)
at /home/usr/myproject/node_modules/graceful-fs/graceful-fs.js:78:16
at FSReqWrap.readFileAfterClose as oncomplete
@ ./src ^.\/(?!main(.js)?$)
WARNING in ./src/sass/base/README.md
Module parse failed: /home/usr/myproject/src/sass/base/README.md Unexpected character '#' (1:0)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected character '#' (1:0)
at Parser.pp.raise (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:923:13)
at Parser.pp.getTokenFromCode (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2831:8)
at Parser.pp.readToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2526:15)
at Parser.pp.nextToken (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:2518:71)
at Parser.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:1631:10)
at Object.parse (/home/usr/myproject/node_modules/webpack/node_modules/acorn/dist/acorn.js:885:44)
at Parser.parse (/home/usr/myproject/node_modules/webpack/lib/Parser.js:902:15)
at DependenciesBlock.
at DependenciesBlock.onModuleBuild (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:310:10)
at nextLoader (/home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:275:25)
at /home/usr/myproject/node_modules/webpack-core/lib/NormalModuleMixin.js:259:5
at Storage.finished (/home/usr/myproject/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:38:16)
at /home/usr/myproject/node_modules/graceful-fs/graceful-fs.js:78:16
at FSReqWrap.readFileAfterClose as oncomplete
@ ./src ^.\/(?!main(.js)?$)
ERROR in ./~/css-loader!./~/sass-loader!./src/sass/base/_base.scss
Module build failed:
color: $brand-color;
^
Undefined variable: "$brand-color".
in /home/usr/myproject/src/sass/base/_base.scss (line 26, column 10)
@ ./src/sass/base/_base.scss 4:14-128
ERROR in ./~/css-loader!./~/sass-loader!./src/sass/base/_helpers.scss
Module build failed:
max-width: $max-width; /* 1 */
^
Undefined variable: "$max-width".
in /home/usr/myproject/src/sass/base/_helpers.scss (line 21, column 14)
@ ./src/sass/base/_helpers.scss 4:14-131
ERROR in ./~/css-loader!./~/sass-loader!./src/sass/base/_typography.scss
Module build failed:
color: $text-color;
^
Undefined variable: "$text-color".
in /home/usr/myproject/src/sass/base/_typography.scss (line 5, column 10)
@ ./src/sass/base/_typography.scss 4:14-134
14 06 2016 20:08:29.389:INFO [karma]: Karma v0.13.22 server started at http://localhost:9876/
14 06 2016 20:08:29.393:INFO [launcher]: Starting browser PhantomJS
14 06 2016 20:08:29.620:INFO [PhantomJS 2.1.1 (Linux 0.0.0)]: Connected on socket /#lyp3azbTrAOn0dVIAAAA with id 36085049
PhantomJS 2.1.1 (Linux 0.0.0) ERROR
Error: Cannot find module "!!./../../../node_modules/css-loader/index.js!./../../../node_modules/sass-loader/index.js!./_/home/usr/myproject/test/unit.scss"
at /home/usr/myproject/test/unit/index.js:11056 <- webpack:///src/sass/base/_base.scss:4:0
PhantomJS 2.1.1 (Linux 0.0.0): Executed 0 of 0 ERROR (0.121 secs / 0 secs)
npm ERR! Linux 4.4.0-24-generic
npm ERR! argv "/home/usr/.nvm/versions/node/v5.11.1/bin/node" "/home/usr/.nvm/versions/node/v5.11.1/lib/node_modules/npm/bin/npm-cli.js" "run-script" "unit"
npm ERR! node v5.11.1
npm ERR! npm v3.8.6
npm ERR! code ELIFECYCLE
npm ERR! [email protected] unit: karma start test/unit/karma.conf.js --single-run
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] unit script 'karma start test/unit/karma.conf.js --single-run'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the myproject package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! karma start test/unit/karma.conf.js --single-run
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs myproject
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls myproject
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /home/usr/myproject/npm-debug.log
Process finished with exit code 1
You can host a minimal example reproducing the problem on GitHub and then link to it.
Before I do that please bear with me as it might be a simple mistake on my side relating to the project folder structure of its sass files.
I worked with webpack a little before and then I just required my sass by doing from the main.js:
import '../sass/main.scss';
And from the main.scss other scss files where included.
However in this templates' setup it looks like 'everything' in the src folder is bundled which causes some the scss variable issues as I currently have this folder structure. In src folder:

Then in the sass folder:

and finally in the base folder:

So the order of importing the scss files is then probably messed up and variables can not be resolved. I might try pushing the sass out of src folder and just import them from main.js ?! What is the 'best practice' here?
Thanks!
Not sure why everything in the src directory would be bundled - that shouldn't happen. My guess is you have a glob import or dynamic require somewhere which is matching everything.
https://github.com/whenthefatladysings/vuejs_webpack_issue
after (in gh folder):
npm install
npm run unit
you will get the error messages mentioned above.
mmh, for clarity: 'whenthefatladysings' = alias of 'musicformellons'
So there are a few things going on here. First, it looks like through deleting files, you've partially removed some features from the template, such as ESLint and Babel - but only partially. The .eslintrc.js file for example was deleted without removing the ESLint preloaders from webpack.base.conf.js. .babelrc was also deleted, breaking Babel integration.
As for your SCSS errors, when the unit tests run, (almost) all the modules in the in src directory are loaded to calculate test coverage. Since the template assumes the src directory contains _independent_ modules, your tightly coupled SCSS raises errors. In _base.scss for example, you get an unknown variable error because the module assumes some global state created by main.scss. You could reorganize all of your SCSS into independent modules - or as explained in the comment here, you can update the regex to match a smaller subset of files, so that SCSS files are not tested for coverage. In your case, you could only test coverage for .js and .vue files like this:
var srcContext = require.context('../../src', true, /^\.\/(?!main\.js$).+\.(js|vue)$/i)
Some recommendations for the future:
eslint, so that you can gain greater perspective on how it's being used..babelrc is necessary for Babel to work. Since you're still using the ES2015+ syntax in JavaScript files throughout the project, I assume breaking Babel was not intentional.I hope this helps.
Adjusting the test coverage as you suggested worked. Thanks for all useful recommendations.
... your tightly coupled SCSS raises errors. In _base.scss for example, you get an unknown variable error because the module assumes some global state created by main.scss.
Thanks for explaining this. I made the same mistake.
Didn't know about the src directory assumption. Thanks @chrisvfritz !
From @chrisvfritz 's comment above:
var srcContext = require.context('../../src', true, /^\.\/(?!main\.js$).+\.(js|vue)$/i);
I found the code needing to be replaced by the above code in /test/unit/index.js
Most helpful comment
So there are a few things going on here. First, it looks like through deleting files, you've partially removed some features from the template, such as ESLint and Babel - but only partially. The
.eslintrc.jsfile for example was deleted without removing the ESLint preloaders fromwebpack.base.conf.js..babelrcwas also deleted, breaking Babel integration.As for your SCSS errors, when the unit tests run, (almost) all the modules in the in
srcdirectory are loaded to calculate test coverage. Since the template assumes thesrcdirectory contains _independent_ modules, your tightly coupled SCSS raises errors. In_base.scssfor example, you get an unknown variable error because the module assumes some global state created bymain.scss. You could reorganize all of your SCSS into independent modules - or as explained in the comment here, you can update the regex to match a smaller subset of files, so that SCSS files are not tested for coverage. In your case, you could only test coverage for.jsand.vuefiles like this:Some recommendations for the future:
eslint, so that you can gain greater perspective on how it's being used..babelrcis necessary for Babel to work. Since you're still using the ES2015+ syntax in JavaScript files throughout the project, I assume breaking Babel was not intentional.I hope this helps.