Webpack 2 - babel-loader - ausschließen node_modules?
Seit ich ein Upgrade auf Webpack 2, ich kann nicht "ausschließen" meine "Regeln". Nicht "ausschließen" in "Optionen". Was ist der richtige Weg, es zu tun jetzt?
Bevor:
{
test: /\.js$/,
loader: 'babel-loader',
exclude: /node_modules/,
}
Nun:
{
test: /\.js$/,
use: [{ loader: 'babel-loader' }]
???
}
Die ganze config:
const path = require('path');
//const autoprefixer = require('autoprefixer');
const postcssImport = require('postcss-import');
const merge = require('webpack-merge');
const CommonsChunkPlugin = require('webpack/lib/optimize/CommonsChunkPlugin');
const development = require('./dev.config.js');
const demo = require('./demo.config.js');
const test = require('./test.config.js');
const staging = require('./staging.config.js');
const production = require('./prod.config.js');
const TARGET = process.env.npm_lifecycle_event;
const PATHS = {
app: path.join(__dirname, '../src'),
build: path.join(__dirname, '../dist'),
};
process.env.BABEL_ENV = TARGET;
const common = {
entry: [
PATHS.app,
],
output: {
path: PATHS.build,
filename: 'bundle.js',
chunkFilename: '[name]-[hash].js',
},
resolve: {
alias: {
config: path.join(PATHS.app + '/config', process.env.NODE_ENV || 'development'),
soundmanager2: 'soundmanager2/script/soundmanager2-nodebug-jsmin.js',
},
extensions: ['.jsx', '.js', '.json', '.scss'],
modules: ['node_modules', PATHS.app],
},
module: {
rules: [{
test: /bootstrap-sass\/assets\/javascripts\//,
use: [{ loader: 'imports-loader', options: { jQuery: 'jquery' } }]
}, {
test: /\.woff(\?v=\d+\.\d+\.\d+)?$/,
use: [{ loader: 'url-loader', options: { limit: '10000', mimetype: 'application/font-woff' } }]
}, {
test: /\.woff2(\?v=\d+\.\d+\.\d+)?$/,
use: [{ loader: 'url-loader', options: { limit: '10000', mimetype: 'application/font-woff' } }]
}, {
test: /\.ttf(\?v=\d+\.\d+\.\d+)?$/,
use: [{ loader: 'url-loader', options: { limit: '10000', mimetype: 'application/octet-stream' } }]
}, {
test: /\.otf(\?v=\d+\.\d+\.\d+)?$/,
use: [{ loader: 'url-loader', options: { limit: '10000', mimetype: 'application/font-otf' } }]
}, {
test: /\.eot(\?v=\d+\.\d+\.\d+)?$/,
use: [{ loader: 'file-loader' }]
}, {
test: /\.svg(\?v=\d+\.\d+\.\d+)?$/,
use: [{ loader: 'url-loader', options: { limit: '10000', mimetype: 'image/svg+xml' } }]
}, {
test: /\.js$/,
//loader: 'babel-loader',
//exclude: /node_modules/,
//use: [{ loader: 'babel-loader', options: { exclude: '/node_modules/' } }]
use: [{ loader: 'babel-loader' }]
//use: [{ loader: 'babel-loader', options: { cacheDirectory: true } }]
}, {
test: /\.png$/,
use: [{ loader: 'file-loader', options: { name: '[name].[ext]' } }]
}, {
test: /\.jpg$/,
use: [{ loader: 'file-loader', options: { name: '[name].[ext]' } }]
}, {
test: /\.gif$/,
use: [{ loader: 'file-loader', options: { name: '[name].[ext]' } }]
}],
},
};
if (TARGET === 'start' || !TARGET) {
module.exports = merge(development, common);
}
if (TARGET === 'build' || !TARGET) {
module.exports = merge(production, common);
}
if (TARGET === 'lint' || !TARGET) {
module.exports = merge(production, common);
}
Die
habe es nochmal versucht und nun plötzlich es kompiliert ohne Fehler, während es vorher beschwerte sich insbesondere über eine nicht unterstützte token in eine Regel-Klausel. gehen Abbildung...
exclude
- Eigenschaft nicht geändert hat im webpack 2. Dein problem liegt wahrscheinlich irgendwo anders in der config. Aber in der Lage sein, um Ihnen zu helfen, müssen Sie Ihre config.habe es nochmal versucht und nun plötzlich es kompiliert ohne Fehler, während es vorher beschwerte sich insbesondere über eine nicht unterstützte token in eine Regel-Klausel. gehen Abbildung...
InformationsquelleAutor Dmitry Shvedov | 2017-03-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden Sie einfach
Weitere ref: https://webpack.js.org/configuration/
InformationsquelleAutor Arun Redhu
Dies ist, wie wir gestern das gleiche problem
vom https://babeljs.io/docs/usage/api/
InformationsquelleAutor Kaveh Nowroozi
Den
exclude
Eigenschaft inwebpack 2
ist immer noch die gleiche, wie Sie zeigte aber nicht ausprobiert, es funktioniert, wie das nurInformationsquelleAutor Pranav Singh
Haben Sie sich Gedanken über die Verwendung externe in webpack.config.js zum ignorieren von Verzeichnissen, die in Ihrem Fall ist die "node_modules"
https://webpack.js.org/guides/author-libraries/#external-limitations
InformationsquelleAutor Tirtha