1. const path = require('path');
    2. const debug = process.env.NODE_ENV !== 'production'
    3. module.exports = {
    4. //部署应用包时的基本URL,如果是生产环境,部署到 /cli-study/dist 路径;如果是开发环境,部署到根路径
    5. publicPath: !debug
    6. ? '/cli-study/dist'
    7. : '/',
    8. //输出文件路径
    9. outputDir: 'dist',
    10. //放置生成的静态资源 (js、css、img、fonts) 的 (相对于 outputDir 的) 目录。
    11. assetsDir: 'static',
    12. //默认情况下,生成的静态资源在它们的文件名中包含了 hash 以便更好的控制缓存
    13. filenameHashing: true,
    14. // eslint-loader 是否在保存的时候检查
    15. lintOnSave: false,
    16. // 是否使用包含运行时编译器的Vue构建版本,设置为 true 后你就可以在 Vue 组件中使用 template 选项了,但是这会让你的应用额外增加 10kb 左右。
    17. runtimeCompiler: true,
    18. // 默认情况下 babel-loader 会忽略所有 node_modules 中的文件。如果你想要通过 Babel 显式转译一个依赖,可以在这个选项中列出来。
    19. transpileDependencies: [],
    20. // 生产环境不需要sourceMap
    21. productionSourceMap: false,
    22. // 官网:https://cli.vuejs.org/zh/guide/webpack.html#%E7%AE%80%E5%8D%95%E7%9A%84%E9%85%8D%E7%BD%AE%E6%96%B9%E5%BC%8F
    23. // 更多配置参考:https://www.jb51.net/article/150844.htm
    24. configureWebpack: config => {
    25. Object.assign(config, { // 开发生产共同配置
    26. resolve: {
    27. alias: {
    28. '@': path.resolve(__dirname, './src'),
    29. 'vue$': 'vue/dist/vue.esm.js'
    30. }
    31. }
    32. })
    33. },
    34. // webpack的链式操作,允许对内部的 webpack 配置进行更细粒度的修改
    35. // 参考: https://cli.vuejs.org/zh/guide/webpack.html#%E9%93%BE%E5%BC%8F%E6%93%8D%E4%BD%9C-%E9%AB%98%E7%BA%A7
    36. chainWebpack: (config) => {
    37. if (debug) {
    38. // 本地开发配置
    39. }
    40. else {
    41. // 生产开发配置
    42. }
    43. },
    44. // css的相关配置
    45. css: {
    46. },
    47. //所有 webpack-dev-server 的选项都支持
    48. devServer: {
    49. open: true,
    50. host: '127.0.0.1',
    51. port: 3000,
    52. https: false,
    53. hotOnly: false,
    54. proxy: null,
    55. },
    56. // 第三方插件配置
    57. pluginOptions: {}
    58. };