Soy nuevo en webpack, y necesito una mano en la configuración para generar mapas de origen. Estoy corriendo webpack serve
desde la línea de comando, que se compila con éxito. Pero realmente necesito mapas fuente. Este es mi webpack.config.js
.
var webpack = require('webpack');
module.exports = {
output: {
filename: 'main.js',
publicPath: '/assets/'
},
cache: true,
debug: true,
devtool: true,
entry: [
'webpack/hot/only-dev-server',
'./src/components/main.js'
],
stats: {
colors: true,
reasons: true
},
resolve: {
extensions: ['', '.js', '.jsx'],
alias: {
'styles': __dirname + '/src/styles',
'mixins': __dirname + '/src/mixins',
'components': __dirname + '/src/components/',
'stores': __dirname + '/src/stores/',
'actions': __dirname + '/src/actions/'
}
},
module: {
preLoaders: [{
test: /\.(js|jsx)$/,
exclude: /node_modules/,
loader: 'jsxhint'
}],
loaders: [{
test: /\.(js|jsx)$/,
exclude: /node_modules/,
loader: 'react-hot!babel-loader'
}, {
test: /\.sass/,
loader: 'style-loader!css-loader!sass-loader?outputStyle=expanded&indentedSyntax'
}, {
test: /\.scss/,
loader: 'style-loader!css!sass'
}, {
test: /\.(png|jpg|woff|woff2)$/,
loader: 'url-loader?limit=8192'
}]
},
plugins: [
new webpack.HotModuleReplacementPlugin(),
new webpack.NoErrorsPlugin()
]
};
Soy realmente nuevo en webpack, y mirar los documentos realmente no ha ayudado, ya que no estoy seguro de a qué se debe este problema.
The 'debug' property was removed in webpack 2.
Respuestas:
Con el fin de mapa de origen uso, debe cambiar
devtool
la opción de valor a partirtrue
del valor de lo que está disponible enthis list
, por ejemplo,source-map
fuente
denug
propiedad ha sido eliminada en el paquete web 2.devtool
es suficiente. No es necesario ningún valor de depuración.Quizás alguien más tenga este problema en algún momento. Si se utiliza el
UglifyJsPlugin
dewebpack 2
debe especificar explícitamente lasourceMap
bandera. Por ejemplo:fuente
devtool: 'source-map'
para que funcioneConfiguración mínima del paquete web para jsx con mapas de origen:
Ejecutándolo:
fuente
Si está optimizando para la producción dev + , puede intentar algo como esto en su configuración:
De los documentos:
Estoy usando webpack 2.1.0-beta.19
fuente
dev
variable?.env
archivos definidos o mutacionesprocess.env
. este es solo un ejemplo, pero podría verse así:const dev = process.env.development === true
En Webpack 2 probé las 12 opciones de devtool. Las siguientes opciones enlazan con el archivo original en la consola y conservan los números de línea. Consulte la nota a continuación con respecto a las líneas solamente.
https://webpack.js.org/configuration/devtool
las mejores opciones de desarrollo de devtool
solo líneas
Los mapas de origen se simplifican a una sola asignación por línea. Esto generalmente significa una sola asignación por declaración (suponiendo que su autor sea de esta manera). Esto le impide depurar la ejecución a nivel de instrucción y establecer puntos de interrupción en las columnas de una línea. La combinación con la minimización no es posible ya que los minimizadores generalmente solo emiten una sola línea.
REVISANDO ESTO
En un proyecto grande que encuentro ... el tiempo de reconstrucción de eval-source-map es ~ 3.5s ... el tiempo de reconstrucción de inline-source-map es ~ 7s
fuente
Incluso el mismo problema que enfrenté, en el navegador mostraba código compilado. He realizado los siguientes cambios en el archivo de configuración del paquete web y ahora funciona bien.
y en cargadores mantuve babel-loader como primera opción
fuente
debug
propiedad ha sido eliminada en el paquete web 2.include
opción es lo que me solucionó. En el paquete web 2 se ve así:rules: [{loader: 'babel-loader', include: [path.resolve(__dirname, "src")]