Когда мы собираем финальную версию приложения, мы делаем две вещи:
- Минифицируем код нашего приложения;
- Используем описанные в руководстве по Vue.js настройки, чтобы устранить все возможные проблемы в коде
Вот пример конфигурации:
// webpack.config.js
module.exports = {
// ... прочие опции
plugins: [
// разбираемся со всеми предупреждениями в нашем Vue.js коде
new webpack.DefinePlugin({
'process.env': {
NODE_ENV: '"production"'
}
}),
// минифицируем, устраняя весь ненужный код
new webpack.optimize.UglifyJsPlugin({
compress: {
warnings: false
}
}),
// только для Webpack 1 – оптимизируем идентификаторы модулей по числу использований
new webpack.optimize.OccurrenceOrderPlugin()
]
}
Очевидно, нам ни к чему использовать эту конфигурацию во время разработки, для этого есть несколько вариантов:
-
Динамически собирать объект конфигурации на основе переменных окружения;
-
Или использовать два отдельных конфигурационных файла Webpack, один для разработки, и один для продакшна. И возможно хранить некоторые их общие опции в третьем файле, как показано в vue-hackernews-2.0.
Не имеет значения, как вы будете это делать, если это решит задачу.