Support config-local.json overrides config.json
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -6,3 +6,4 @@ node_modules
|
||||
npm-debug.log
|
||||
yarn-error.log
|
||||
vendor
|
||||
resources/assets/config-local.json
|
||||
|
||||
@@ -2,7 +2,9 @@ const path = require('path');
|
||||
const { argv } = require('yargs');
|
||||
const merge = require('webpack-merge');
|
||||
|
||||
const userConfig = require('../config');
|
||||
const desire = require('./util/desire');
|
||||
|
||||
const userConfig = merge(desire(`${__dirname}/../config`), desire(`${__dirname}/../config-local`));
|
||||
|
||||
const isProduction = !!((argv.env && argv.env.production) || argv.p);
|
||||
const rootPath = (userConfig.paths && userConfig.paths.root)
|
||||
|
||||
14
resources/assets/build/util/desire.js
Normal file
14
resources/assets/build/util/desire.js
Normal file
@@ -0,0 +1,14 @@
|
||||
/**
|
||||
* @export
|
||||
* @param {string} dependency
|
||||
* @param {any} [fallback]
|
||||
* @return {any}
|
||||
*/
|
||||
module.exports = (dependency, fallback) => {
|
||||
try {
|
||||
require.resolve(dependency);
|
||||
} catch (err) {
|
||||
return fallback;
|
||||
}
|
||||
return require(dependency); // eslint-disable-line import/no-dynamic-require
|
||||
};
|
||||
Reference in New Issue
Block a user