From ac8f7a36e0b4d9abd882620bc5d492de8b8a3346 Mon Sep 17 00:00:00 2001 From: M Clark Date: Tue, 5 Apr 2016 14:30:27 +0800 Subject: [PATCH 1/4] resolve.alias should be resolve.root #28 As in #28 --- cfg/base.js | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/cfg/base.js b/cfg/base.js index 94e7938..0f6cfad 100644 --- a/cfg/base.js +++ b/cfg/base.js @@ -29,14 +29,18 @@ module.exports = { }, resolve: { extensions: ['', '.js', '.jsx'], - alias: { - actions: `${defaultSettings.srcPath}/actions/`, - components: `${defaultSettings.srcPath}/components/`, - sources: `${defaultSettings.srcPath}/sources/`, - stores: `${defaultSettings.srcPath}/stores/`, - styles: `${defaultSettings.srcPath}/styles/`, - config: `${defaultSettings.srcPath}/config/` + process.env.REACT_WEBPACK_ENV - } + root: [ + `${defaultSettings.srcPath}/actions`, + `${defaultSettings.srcPath}/components`, + `${defaultSettings.srcPath}/dispatchers`, + `${defaultSettings.srcPath}/sources`, + `${defaultSettings.srcPath}/stores`, + `${defaultSettings.srcPath}/styles`, + `${defaultSettings.srcPath}/helpers`, + `${defaultSettings.srcPath}/data`, + `${defaultSettings.srcPath}/config` + process.env.REACT_WEBPACK_ENV, + `${defaultSettings.srcPath}` + ] }, module: {} }; From 32959b5f2041f9e7d0ccb01256771dc916075318 Mon Sep 17 00:00:00 2001 From: M Clark Date: Tue, 5 Apr 2016 14:38:05 +0800 Subject: [PATCH 2/4] Keep the alias for config This alias is needed to load the config for the env and pass ConfigTest.js --- cfg/base.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/cfg/base.js b/cfg/base.js index 0f6cfad..7dc3595 100644 --- a/cfg/base.js +++ b/cfg/base.js @@ -38,9 +38,11 @@ module.exports = { `${defaultSettings.srcPath}/styles`, `${defaultSettings.srcPath}/helpers`, `${defaultSettings.srcPath}/data`, - `${defaultSettings.srcPath}/config` + process.env.REACT_WEBPACK_ENV, `${defaultSettings.srcPath}` - ] + ], + alias: { + config: `${defaultSettings.srcPath}/config` + process.env.REACT_WEBPACK_ENV + } }, module: {} }; From a6d65df3df16671f7fef174c877c0e1409679316 Mon Sep 17 00:00:00 2001 From: M Clark Date: Tue, 5 Apr 2016 14:38:56 +0800 Subject: [PATCH 3/4] Add slash --- cfg/base.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cfg/base.js b/cfg/base.js index 7dc3595..fd4ec26 100644 --- a/cfg/base.js +++ b/cfg/base.js @@ -41,7 +41,7 @@ module.exports = { `${defaultSettings.srcPath}` ], alias: { - config: `${defaultSettings.srcPath}/config` + process.env.REACT_WEBPACK_ENV + config: `${defaultSettings.srcPath}/config/` + process.env.REACT_WEBPACK_ENV } }, module: {} From 3a5fa7c80f0efc57254ea8381254f20d68e7bf49 Mon Sep 17 00:00:00 2001 From: M Clark Date: Wed, 6 Apr 2016 11:43:47 +0800 Subject: [PATCH 4/4] Webpack test.js uses resolve.root too I realised I should make the change in the test config as well. And it seems to better if the test config inherits from baseConfig and defaultSettings where possible, so I did that. That way you are testing as close to your actual config as possible. Especially because there is one test of the config path. --- cfg/test.js | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/cfg/test.js b/cfg/test.js index f139c49..0bc5c54 100644 --- a/cfg/test.js +++ b/cfg/test.js @@ -1,8 +1,7 @@ 'use strict'; let path = require('path'); -let srcPath = path.join(__dirname, '/../src/'); - +let defaultSettings = require('./defaults'); let baseConfig = require('./base'); // Add needed plugins here @@ -40,15 +39,11 @@ module.exports = { }, resolve: { extensions: [ '', '.js', '.jsx' ], - alias: { - actions: srcPath + 'actions/', - helpers: path.join(__dirname, '/../test/helpers'), - components: srcPath + 'components/', - sources: srcPath + 'sources/', - stores: srcPath + 'stores/', - styles: srcPath + 'styles/', - config: srcPath + 'config/' + process.env.REACT_WEBPACK_ENV - } + root: [].concat( + baseConfig.resolve.root, + [`${defaultSettings.srcPath}/test`] + ), + alias: baseConfig.resolve.alias }, plugins: [ new BowerWebpackPlugin({